提问一条题目
main( ){
int x=102,y=012;
printf("%2d,%2d\n",x,y);
getch();
}
执行后输出结果为什么是
102,10
搜索更多相关的解决方案:
提问
----------------解决方案--------------------------------------------------------
printf的域宽输出---如果超出范围则全部输出所以第一个输出102,注意和scanf的区别(scanf是要从做向右截取的哦)
y=012,是八进制的东西,你用十进制%d输出不就是10了。。。
----------------解决方案--------------------------------------------------------
以下是引用我是菜鸟哦在2007-6-30 19:25:59的发言:
printf的域宽输出---如果超出范围则全部输出所以第一个输出102,注意和scanf的区别(scanf是要从做向右截取的哦)
y=012,是八进制的东西,你用十进制%d输出不就是10了。。。
printf的域宽输出---如果超出范围则全部输出所以第一个输出102,注意和scanf的区别(scanf是要从做向右截取的哦)
y=012,是八进制的东西,你用十进制%d输出不就是10了。。。
哦,原来是这样THANKS
----------------解决方案--------------------------------------------------------