有以下程序: main() { int x=102, y=012; printf("%2d,%2d\n",x,y); } 执行后输出结果是( )。

admin2013-02-23  43

问题 有以下程序:    main()    {  int x=102,  y=012;    printf("%2d,%2d\n",x,y);    }    执行后输出结果是(  )。

选项 A、10,01
B、02,12
C、102,10
D、02,10

答案4

解析 本题中,“printf("%2d,%2d\n",x,y)”表示以逗号隔开输出两个十进制整数,每个整数域宽是2。而在C语言中规定:当域宽小于实际宽度时域宽不起作用,按实际宽度输出,因此最后的输出值为102和10(y的初值012表示八进制整数12,等于十进制的10)。所以,4个选项中选项C符合题意。
转载请注明原文地址:https://jikaoti.com/ti/39B0FFFM
0

最新回复(0)