1.下列程序的输出结果是( ) #include <stdio.h> void main() { int a = 2, b = 3, c = 0, d; d = !a &&

1.下列程序的输出结果是( )
#include <stdio.h>
void main()
{ int a = 2, b = 3, c = 0, d;
d = !a && !b ||!c;
printf(“%d\n”, d);
}
a.1 b.0 c.编译出错 d.-1

答案为a
在逻辑表达式中,因为a值为2,b值为3所以这两个均为真;而!a为假,假用0表示,假与任何数使用&&均为假,所以不执行判断!b;但后面又有或语句,接着判断!c 因为c为0所以!c 不为0故语句为真!真就用1来表示。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-25
-1 (X--,是先取X的值然后再X=X-1)
调试分解:
1、X=2 while(2) x=x-1;
2、x=1 while(1) x=x-1;
3、x=0 while(0) x=x-1;即x=-1,然后跳出循环
4、输出结果x=-1
第2个回答  2011-04-24
选A C语言的这题要根据逻辑运算符来运算
相似回答