单选题
有以下程序:
main()
{ int a=1,b=2,m=0,n=0,k;
k=(n=b>a)||(m=a<b);
printf("%d,%d/n",k,m);
}
程序运行后的输出结果是{{U}} {{/U}}。
A. 0,0
B. 0,1
C. 1,0
D. 1,1
A
B
C
D
【正确答案】
C
【答案解析】
[解析] 在“||”运算中当其左边的表达式为真,右边的表达式将不再执行。主函数中,“||”左边的表达式k=(n=b>a),“2>1”为真,所以n被赋值为1,接着k被赋值1,即“||”运算符左边表达式为真,此时不再计算“||”右边的表达式,因此m的值没有被改变仍为0,最后的输出结果1,0。所以, 4个选项中选项C符合题意。
提交答案
关闭