A-A+

有以下程序main(){ int a=1 b=2 m=0 n=0 k;k=(n=b>a)||

2022-08-05 21:48:31 问答库 阅读 172 次

问题详情

有以下程序
main()
{ int a=1,b=2,m=0,n=0,k;
k=(n=b>a)||(m=a
printf("%d,%dn",k,m);
}
程序运行后的输出结果是
A.0,0
B.0,1
C.1,0
D.1,1

参考答案

正确答案:C
解析:由于整个表达式中出现了“‖”运算符,则先计算“‖”前的表达式的值。若非0,则不再计算其后表达式的值,由于b>a为逻辑真1,1赋给n,n为1再赋给k,k值为1,则“‖”左边式子的值为1,故不再计算其后的式子,m值不发生变化。

考点:程序