#include<stdio.h>
main()
{
char arr[50]="";
char *p= arr;
int i ;
scanf("%d", &i);//输入一个十进制的数
int result = 0;
while (i != 0) {
result = i % 16;//求出余数
if (result > 9) {//16进制 10为‘A’,11为‘B’....以此类推
switch (result) {
case 10: *p++ = 'A';break;
case 11: *p++ = 'B';break;
case 12: *p++ = 'C';break;
case 13: *p++ = 'D';break;
case 14: *p++ = 'E';break;
case 15: *p++ = 'F';break;
}
}
else {
*p++ =result%16+48;//如果小于十直接把它的值给数组元素
}
i /= 16;//每给数组元素赋值一次后除以一次进制数
}
//最后求出来的结果倒序输出就是我们想得到的数
for (i = p - 1 - arr;i >= 0;i--) {
printf("%c", arr[i]);
}
}
C语言将十进制转换成十六进制
最新推荐文章于 2024-07-17 23:31:48 发布