橴陽花桾__
大神们来讨论一下十进制变成十六进制的问题

本帖最后由 橴陽花桾__ 于 2012-11-20 01:23 编辑

#include<stdio.h>

void dec2hex(int n);

int cnt=0;

void main()

{

int num;

printf("input decimal code>");

scanf("%d",&num);

printf("hex(%d)= ",num);

dec2hex(num);

printf("(%d)%n",cnt);

return(0);

}

void dec2hex(int n)

{

int i,h;

char *hex="0123456789ABCDEF";

cnt++;

i=n/16;

if(i!=0)

{

dec2hex(i);

}

h=n%16;

putchar(hex[h]);

}

这是我写的程序,

将一个整数变成十六进制形式、0.0

有没有更好的方法呢。

P.S win 7 跑起来会弹出一个系统调试窗口0.0 不知道怎么回事。

橴陽花桾__
十六进制和十进制哪有什么本质区别
展开Biu

jinlei6394 发表于 2012-12-28 00:51

十六进制和十进制哪有什么本质区别。

不过是字面游戏罢了,所以读取后直接显示即可。

%d -> %x ...

重点是要用函数,,

[查看全文]
jinlei6394
十六进制和十进制哪有什么本质区别
展开Biu

十六进制和十进制哪有什么本质区别。

不过是字面游戏罢了,所以读取后直接显示即可。

%d -> %x

[查看全文]
jains521
的人都知道
展开Biu

好吧. 没看过c的人都知道c中有个函数可以直接将10进制转成16进制的..还可以转成2进制.等等的......

额.难道楼主在梦游.

[查看全文]
foodszhu
橴陽花桾
展开Biu

橴陽花桾__ 发表于 2012-11-20 12:35

怎么会这样

这个c语言自带的格式化输出也是很强大的啊。。推荐你看看sscanf和sprintf。。都是很强大的

不过你可以将自己的程序改成一个三十六进制内任意进制转换的程序啊什么的就好了。。这样才显得多样化。。如果只是十进制转十六进制当然库函数更好啦

[查看全文]
橴陽花桾__
则是小写字母
展开Biu

foodszhu 发表于 2012-11-20 10:05

小写x则是小写字母,大写X就输出大写字母啦

#34! 怎么会这样

[查看全文]
foodszhu
橴陽花桾
展开Biu

橴陽花桾__ 发表于 2012-11-20 08:56

但是为啥我的是转换成a~e

小写x则是小写字母,大写X就输出大写字母啦

[查看全文]
橴陽花桾__
自动转换的吧
展开Biu

nevertry 发表于 2012-11-20 08:46

那个是c自动转换的吧,直接就是A~E的说

#31! 但是为啥我的是转换成a~e

[查看全文]
沫沫飘
自动转换的吧
展开Biu

那个是c自动转换的吧#7036!,直接就是A~E的说

[查看全文]