代码
#include<stdio.h>
#include<stdlib.h>
char data[] = { '0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F' };
int zhuanhuan(int n, char *a)
{
int i = 0;
while (n != 0)
{
a[i++] = data[n % 16];
n = n / 16;
}
return i;
}
int print(char *a, int m)
{
int i;
for (i = m - 1; i >= 0; i--)
printf("%c", a[i]);
printf("\n");
return 0;
}
int main()
{
int n, m;
char a[9];
scanf_s("%d", &n);
m = zhuanhuan(n, a);
print(a, m);
system("pause");
}
思考
十进制与十六进制之间转化,是实型与字符型之间的转化,他们之间的赋值需要特殊处理!!!