问题
单项选择题
有以下程序:
main()
int x=102, y=012;
printf("%2d,%2d\n",x,y);
执行后输出结果是( )。
A) 10,01
B) 02,12
C) 102,10
D) 02,10
答案
参考答案:C
解析: 本题中,“printf("%2d,%2d\n",x,y)”表示以逗号隔开输出两个十进制整数,每个整数域宽是2。而在C语言中规定:当域宽小于实际宽度时域宽不起作用,按实际宽度输出,因此最后的输出值为102和10(y的初值012表示八进制整数12,等于十进制的10)。所以,4个选项中选项C符合题意。