C语言中在没有数字的情况下怎么才能看出是用八进制,十进制还是十六进制呢?

例如
main()
{intx,y,z;
int max(int a,int b);
printf("input two number:\n");
scanf("%d%d",&x,&y);
z=max(x,y);
printf(maxmum=%d",z);
}
int max(int a,int b)
{
if(a>b)return a;return b;
} 在这个式子中为什么要用十进制呢?

多少进制只是给人看的,机器肯定是在进行二进制操作,你是说这里if(a>b)return a;return b;为什么是十进制吗?其实他是在用二进制比较(几进制数值都是一样大的,别忘了),至于你想象的十进制可能是因为输入scanf("%d%d",&x,&y); 和输出printf(maxmum=%d",z);,格式%d只是以让以十进制方式输入和输出,误解了他在用十进制操作
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-06-20
没有为什么,乌龟的屁股:规定 只有常量时才能区分八进制,十进制,十六进制,变量都是十进制,也最容易理解,可读性也更强啊
第2个回答  2011-06-20
%d 就是要你输入10进制啊,我没太明白你什么意思,你能具体点吗追问

我的意思是说在这个式子中为什么要用十进制输入和输出 而不用八进制和十六进制呢?

相关了解……

你可能感兴趣的内容

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