有以下程序: main() { int a=1,b=2,m=0,n=0,k; k=(n=b>a)||(m=a<b); printf("%d,%d\n",k,m); } 程序运行后的输出结果是 _

admin2013-02-23  23

问题 有以下程序:    main()    {    int a=1,b=2,m=0,n=0,k;         k=(n=b>a)||(m=a<b);         printf("%d,%d\n",k,m);    }    程序运行后的输出结果是 ______。

选项 A、0,0
B、0,1
C、1,0
D、1,1

答案C

解析 本题考查“逻辑或”运算的特例。本题中执行语句k=(n=b>a)||(m=a<b)时,首先计算表达式(n=b>a)|| (m=a<b)的值,因b=2,a=1,所以b>a成立,即得n=1,故表达式(n=b>a)||(m=a<b)的值为真,不再执行表达式 m=a<b,故执行完表达式k=(n=b2>a)||(m=a<b)后,n=1、m=0、k=1。
转载请注明原文地址:https://jikaoti.com/ti/P8n0FFFM
0

最新回复(0)