作业帮 > 综合 > 作业

#include main(){int a=1,b=0; if(!a)b++; else if (a==0) if(a)

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/11/08 00:46:32
#include main(){int a=1,b=0; if(!a)b++; else if (a==0) if(a) b+=2; else b+=3; printf(b)
程序是不是写错了,没有输出结果,你是想实现什么呢?
再问: 输出b的值,结果是2,不知道怎么算的。 if(!a) if(a) 是什么意思,希望能分析下程序,
再答: #include main() { int a=1,b=0; if(!a)b++; else if(a==0) if(a) b+=2; else b+=3; printf("%d",b); } 程序开始执行到if(!a)时,a的值是1,!a的值就是0(假值),所以if(!a)后面的语句不执行,if(a==0)也是假值,后面的语句也不执行,即 if(a) b+=2; else b+=3; 都是else if(a==0)后面的语句,不执行。所以b的值还是原值不变,最后输出结果是b=0。