首页 > 用户发贴区 > 编程问题提问区 > 这个程序的输出结果
2009
04-06

这个程序的输出结果

1          #include<stdio.h>


2          void main()


3          {     


4                 int  a=1, b=2, c=3, d=4, m=1, n=1,x=2, y=2;


5                 printf(“Original: m=%d, n=%d, x=%d, y=%d\n”,m,n,x,y);


6                 (m=a>b)&&(n=c>d);


7                 (x=b>a)||(y=d>c);


8                 printf(“Present: m=%d, n=%d, x=%d, y=%d\n”,m,n,x,y);


9          }


最后的m,n,x,y的输出结果是什么啊?为什么?


这个程序的输出结果》有 2 条评论

  1. ljgcrazyman 说:

    第一个输出就不说了。

    第二个输出为:m=0,n=1,x=1,y=2

    对于&&和\\是双目逻辑运算符 结合性:自左向右

    &&对两个表达式进行计算时,若第一个表达式的值为“假”,则结果与第二个表达式无关(不能计算第二个表达式的值),最终结果为0

    ||对两个表达式进行计算时,若第一个表达式的值为“真”,则结果与第二个表达式无关(不能计算第二个表达式的值),最终结果为1。            (表达式1)||(表达式2)< ?:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

  2. nerissa999 说:

    谢谢你啊!!

留下一个回复