Void main() { int a=5,b=2,c=0; if((a+b)%2==1) if(a>0&&CB<0) c=1; else c=2; printf("%d",c)

如题所述

第1个回答  2016-06-04
结果 输出c为 2
a,b,c开始值满足最外面的if,不满足里面if的bc<0,所以c的值变为2追问

我还见过有的题第一个if和第二个if都不满足应该怎么算

追答

如果两个if 都不满足 就是最开始的int的值 c=0
但是你的a=5,b=2,c=0这三个值已经确定了,肯定满足最外面那个if ,不满足里面的if

本回答被提问者和网友采纳
第2个回答  2016-06-05
#includevoidmain(){inta=1,b=0;if(!a)b++;//!a的意思是a==0这里不成立elseif(a==0)//判断这里也不成立{//是这么分段的,所以下面的都不做了,b没有变化if(a)b+=2;elseb+=3;}printf("%d\n",b);}

int a=5,b=0,c=0; if(a=b+c) printf("***\\n"); else ptintf("$$$\\n...
include<stdio.h> include<conio.h> int main(){ int a=5,b=2,c=1;printf("%d,%d\\n",a=b+c,a);return 0;} 运行结果看下图:由此可知,+的优先级高于=,且赋值运算的返回值就是赋的值。所以你的程序if(a=b+c)中, 首先是b+c=0,然后将0赋值给a,同时这个0也作为if的判断条件,...

...void main() { int a=2,b=1,c=2; if(a<b) if(b<0) c=0; else c++...
你要搞清楚 | 和 || 的区别,||:逻辑或,前后条件只要有一个满足表达式为真,a++||++b,a++先判断,后执行+1,也就是a=1为真,后面++b就不用管,不执行,就是短路性质。短路现象常见的有,短路与(&&)和短路或(||),若a && b ,如果a 的值为假,则整个表达式的值就为假,它是...

main() { int a=2,b=-1,c=2; if(a<b) if(b<0) c=0; else c++; printf...
在这题中else语句与if(b<0) c=0组成一对 它们这个整体同属于上一个if(a<b) 里面的分支。因为a=2,b=-1,不能进入if(a<b) 里面的分支 所以就直接跳出了,执行printf("%d\\n",c)这个时候c未做任何改变,所以值为2

void main() { int a=2,b=-1,c=2; if (a<b) if(b<0) c=0; else c+=...
void main() { int a=2,b=-1,c=2;if (a<b)if(b<0) c=0;else c+=1;printf("%d\\n",c);} 结果2,if的嵌套,意思是如果a<b并且b<0,才执行c=0。题意不满足,所以不执行,else于离着它最近的if配对,所以这个程序时一个大的if里面嵌套一个if—else语句。所以当a<b不成立时,...

void main() {int a=5,b=4,c=3,d=2; if(a>b>c) printf("%d\\n",d...
第一个IF 里面 判断 A>B>C 她不是一块判断的 而是从左到右进行判断 先判断A>B 因为成立 所以A>B是正确的 所以A>B的值为 1 (1表示TRUE,0表示FALSE) 然后 就变成 1和C比较了 当然1小于C 所以第一个IF 不满足 满足第二个IF 所以就输出2+1 =3 了 ...

#include<stdio.h> void main() { int a=3,b=2,c=1; int x=10,y=20...
这代码太错乱了,能不能粘完整,整齐的

#include<stdio.h> void main() { int a=3,b=2,c=1; int x=10,y=20...
题好乱...

...h>main(){int a=2,b=-1,c=2;if(a<b)if(b<c) c=0;else c+=1;printf...
if()else语句的嵌套默认的情况下,else语句与离他最近的if配对。所以本例else和第二个if配合。第一个if的判断条件不成立,则跳过其后的语句体 if(b<c) c=0;else c+=1;全部不执行。只执行最后的 printf("%d\\n",c);所以输出的结果是2 ...

...void main() { int a=2,b=-1,c=2; if(a<b) if(b<c)c=0; else c+...
你的第二个if语句前后有没有大括号,如果有的话,结果是3;没有的话结果就是0。

main(){ int a=5,b=4,c=3,d=2; if(a>b>c) printf(“%d
C语言中不能用 a > b > c 这样的表达式来判断a, b, c 之间的大小。正确的表达式应为: if (a > b && b > c)具体可以找一本C语言基础的书籍看看

相似回答