×

c 四舍五入 语言

C语言如何实现在运算过程中的四舍五入保留两位小数?C语言求文件MD5的函数用法

admin admin 发表于2022-05-03 19:07:36 浏览105 评论0

抢沙发发表评论

C语言如何实现在运算过程中的四舍五入保留两位小数

#include“stdio.h“voidmain(){doublea=3.5678;//a可换成其他小数intb=(int)(a*100);doublec=b/100.0;printf(“%.2f“,c);}结果为3.56(百分位后的小数全部舍去)

C语言求文件MD5的函数用法

#ifndef MD5_H#define MD5_H typedef struct{ unsigned int count; unsigned int state; unsigned char buffer; }MD5_CTX;#define F(x,y,z) ((x & y) | (~x & z))#define G(x,y,z) ((x & z) | (y & ~z))#define H(x,y,z) (x^y^z)#define I(x,y,z) (y ^ (x | ~z))#define ROTATE_LEFT(x,n) ((x 《《 n) | (x 》》 (32-n)))#define FF(a,b,c,d,x,s,ac) \ { \ a += F(b,c,d) + x + ac; \ a = ROTATE_LEFT(a,s); \ a += b; \ }#define GG(a,b,c,d,x,s,ac) \ { \ a += G(b,c,d) + x + ac; \ a = ROTATE_LEFT(a,s); \ a += b; \ }#define HH(a,b,c,d,x,s,ac) \ { \ a += H(b,c,d) + x + ac; \ a = ROTATE_LEFT(a,s); \ a += b; \ }#define II(a,b,c,d,x,s,ac) \ { \ a += I(b,c,d) + x + ac; \ a = ROTATE_LEFT(a,s); \ a += b; \ } void MD5Init(MD5_CTX *context);void MD5Update(MD5_CTX *context,unsigned char *input,unsigned int inputlen);void MD5Final(MD5_CTX *context,unsigned char digest);void MD5Transform(unsigned int state,unsigned char block);void MD5Encode(unsigned char *output,unsigned int *input,unsigned int len);void MD5Decode(unsigned int *output,unsigned char *input,unsigned int len); #endif源文件md5.c#include 《memory.h》#include “md5.h“ unsigned char PADDING={0x80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; void MD5Init(MD5_CTX *context){ context-》count = 0; context-》count = 0; context-》state = 0x67452301; context-》state = 0xEFCDAB89; context-》state = 0x98BADCFE; context-》state = 0x10325476;}void MD5Update(MD5_CTX *context,unsigned char *input,unsigned int inputlen){ unsigned int i = 0,index = 0,partlen = 0; index = (context-》count 》》 3) & 0x3F; partlen = 64 - index; context-》count += inputlen 《《 3; if(context-》count 《 (inputlen 《《 3)) context-》count++; context-》count += inputlen 》》 29; if(inputlen 》= partlen) { memcpy(&context-》buffer[index],input,partlen); MD5Transform(context-》state,context-》buffer); for(i = partlen;i+64 《= inputlen;i+=64) MD5Transform(context-》state,&input[i]); index = 0; } else { i = 0; } memcpy(&context-》buffer[index],&input[i],inputlen-i);}void MD5Final(MD5_CTX *context,unsigned char digest){ unsigned int index = 0,padlen = 0; unsigned char bits; index = (context-》count 》》 3) & 0x3F; padlen = (index 《 56)?(56-index):(120-index); MD5Encode(bits,context-》count,8); MD5Update(context,PADDING,padlen); MD5Update(context,bits,8); MD5Encode(digest,context-》state,16);}void MD5Encode(unsigned char *output,unsigned int *input,unsigned int len){ unsigned int i = 0,j = 0; while(j 《 len) { output[j] = input[i] & 0xFF; output[j+1] = (input[i] 》》 8) & 0xFF; output[j+2] = (input[i] 》》 16) & 0xFF; output[j+3] = (input[i] 》》 24) & 0xFF; i++; j+=4; }}void MD5Decode(unsigned int *output,unsigned char *input,unsigned int len){ unsigned int i = 0,j = 0; while(j 《 len) { output[i] = (input[j]) | (input[j+1] 《《 8) | (input[j+2] 《《 16) | (input[j+3] 《《 24); i++; j+=4; }}void MD5Transform(unsigned int state,unsigned char block){ unsigned int a = state; unsigned int b = state; unsigned int c = state; unsigned int d = state; unsigned int x; MD5Decode(x,block,64); FF(a, b, c, d, x[ 0], 7, 0xd76aa478); /* 1 */ FF(d, a, b, c, x[ 1], 12, 0xe8c7b756); /* 2 */ FF(c, d, a, b, x[ 2], 17, 0x242070db); /* 3 */ FF(b, c, d, a, x[ 3], 22, 0xc1bdceee); /* 4 */ FF(a, b, c, d, x[ 4], 7, 0xf57c0faf); /* 5 */ FF(d, a, b, c, x[ 5], 12, 0x4787c62a); /* 6 */ FF(c, d, a, b, x[ 6], 17, 0xa8304613); /* 7 */ FF(b, c, d, a, x[ 7], 22, 0xfd469501); /* 8 */ FF(a, b, c, d, x[ 8], 7, 0x698098d8); /* 9 */ FF(d, a, b, c, x[ 9], 12, 0x8b44f7af); /* 10 */ FF(c, d, a, b, x, 17, 0xffff5bb1); /* 11 */ FF(b, c, d, a, x, 22, 0x895cd7be); /* 12 */ FF(a, b, c, d, x, 7, 0x6b901122); /* 13 */ FF(d, a, b, c, x, 12, 0xfd987193); /* 14 */ FF(c, d, a, b, x, 17, 0xa679438e); /* 15 */ FF(b, c, d, a, x, 22, 0x49b40821); /* 16 */

求汇编语言视频教程-(小甲鱼主讲全套77讲)全套下载地址

不要问我叫什么,我的名字叫好人!

《汇编语言视频教程-(小甲鱼主讲全套77讲)》