关于十进制 转十六进制算法?

2022-08-06 社会 78阅读

把十进制数除以16,保留余数部分。得到余数以后就不要再往下除得小数。

代码:

#include "stdio.h" int main() 


int num=0;

int a[100]; 

int i=0; 

int m=0;

int yushu; 

char hex[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};

printf("请输入一个十进制数:");

scanf("%d",&num); while(num>0) { yushu=num%16;

a[i++]=yushu; 

num=num/16;

} printf("转化为十六进制的数为:0x"); for(i=i-1;i>=0;i--)//倒序输出 {m=a[i];

printf("%c",hex[m]); } printf("\n"); 

}

扩展资料:

十进制转十六进制

采余数定理分解,例如将487710转成十六进制:

4877÷16=304....13(D)

304÷16=19....0

19÷16=1....3

1÷16=0....1

这样就计到487710=130D16

参考资料来源:百度百科-十六进制

声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com