C语言编程:怎么把一个十进制数转换成为一个十六进制数?

如题所述

我们刚学了栈,我做了一个任意进制转换的程序,你看一下,,即使你没学,但思想是一样的
假入你输入的是m,可在设一个数组用来装余数,完整程序如下:
#include<stdio.h>
void
main()
{
int
a[10],m,i=0;
printf("please
ennter
a
number\n");
scanf("%d",&m);
while(m!=0)
{
a[i++]=m%16;//在装余数的同时用i统计余数的个数
m=m/16;
}
for(i=i-1;i>=0;i--)
{
switch(a[i])
{case
10:printf("A");break;
case
11:printf("B");break;
case
12:printf("C");break;
case
13:printf("D");break;
case
14:printf("E");break;
case
15:printf("F");break;
default:printf("%d",a[i]);
}
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-03-19
是16进制的字串吧,变成16进制的的数字没有意义呀,因为数字在内存中就是16进制的,使用Sprintf(szOut,
"%H",
dData);

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网