c语言上的一个小问题

已知 int a=1,b=2,c=3,d=4,m=2,n=2;则执行(m=a>b)&&(n=c>d)中n等于多少,等于m多少?我想知道步骤,这怎么算的?

这个题目你需要考虑的是运算符的优先级问题。你可以查阅一下相关资料。在此相关内容我就不赘述了。就说这个题吧,从左往右,先算左边括号中的a>b,1>2很明显是假的,所以这个结果就是0了,然后括号中就成了m=0,也就是说m的值就成0了。赋值运行返回的是等号左边的值,也就是说,m=0这个式子的结果是m,即是0。接着看右边的括号,同样可以判断出n=0。最后是一个逻辑运行0&&0,两个都假,这个式子的结果也是假了,即是0
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-05-17
复制表达式返回的是 等号左边的值,a>b为false,转化为整型是0;所以m,n值都为0

相关了解……

你可能感兴趣的内容

大家正在搜

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网