C语言中 什么情况下结果是 1和0

#include<stdio.h>
main()
{ int a=100;
if(a>100)printf("%d\n",a>100);
else printf("%d\n",a<=100);
为什么结果是个表示是非的1

#include<stdio.h>
main()
{
int a=100;
if(a>100) printf("%d\n",a>100); //a=100不大于100,所以不成立
else printf("%d\n",a<=100); //a=100成立,所以输出(a<=100)表达式的结果,即:1
}
对于商上面这个算法,无论a的值是多少,输出的都是 1.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-08-27
因为a>100为假,所以printf("%d\n",a>100);这条语句不执行,又因a<=100为真,所以这个表达式的值为1,即输出的结果为1
第2个回答  2011-08-27
printf("%d\n",a>100); //a>100是逻辑表达式,得到的结果是布尔型true或false,
1代表true,0代表false。
实际上,只要是非零数都代表真,只有0才代表假,但是计算机只识别0,1代码、、
第3个回答  2011-08-27
a>100这样的表达式有逻辑值真或者假
真是true整型值是1
假是false,0
第4个回答  2011-08-27
记住一点就可以了,成立就是"1"不成立就是"0",以不变应万变!

相关了解……

你可能感兴趣的内容

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