c语言题目,题目运行出来答案是1,那个else后面的printf为什么没有输出啊,if为假不就要执

c语言题目,题目运行出来答案是1,那个else后面的printf为什么没有输出啊,if为假不就要执行else吗

因为这里的else不归第一个if管,第一个if不成立则下面的if和else不执行,所以直接执行最后一行,然后因为是x++,是代表输出 x 的值后再进行+1。所以就等于1.
温馨提示:内容为网友见解,仅供参考
第1个回答  2014-05-09
这个else是与if(y<z)对应的,但是在根据条件,第一个if(x>y)就为假,所以不会进入到它内部的if与else,程序只是执行了最后一条语句print("%d\n“,x++);
第2个回答  2014-05-09
else是和它最近的if结合,成为if else 对
所以,第二个if和else是一个整体,都是第一个if的执行体,而第一个if不成立,所以第二个if和else都不执行。直接执行最后一个printf本回答被提问者采纳

c语言题目,题目运行出来答案是1,那个else后面的printf为什么没有输 ...
因为这里的else不归第一个if管,第一个if不成立则下面的if和else不执行,所以直接执行最后一行,然后因为是x++,是代表输出 x 的值后再进行+1。所以就等于1.

为什么这段if-else语句的条件没有生效?无论输入什么输出都是1
if,else语句后如果只有一句执行语句,可以不加 { },多于一句必须要加 { },个何况您循环嵌套了!还是不要偷懒,改写就写吧.

c语言运行程序为什么没有输出数?
C语言运行程序为什么没有输出数字,产生的原原因如下:1、输入的格式不对 要输入“浮点数”并用 “逗号” 分隔输入三个数两个逗号后还要额外多加一回车才开始后面的流程,如果把 scanf("%f,%f,%f\\n",&a,&b,&c);改为 scanf("%f%f%f",&a,&b,&c);就可以用空白符做分隔了。2、没有输出 不...

请问我的C语言中printf为什么没有输出?
你这个就是卡在scanf里面了

(c语言)为什么只能输出if不能输出else
||是或,满足一个条件就行,1 1 2 b+c>a和a+c>b都满足了 所以成立,&&才是且

C语言,一个小问题,为什么在if后面一直都没有花括号?
1、加上大括号相当于一个语句块,if条件只影响其后面的第一个语句或语句块,加括号的话,则执行括号中的全部语句(也就是在if条件成立的情况下,则全部执行,如果if条件不成立,则整个括号中的语句都不执行);而不加括号的话,则影响其后的第一条语句,也就是说不管if条件成不成立,第一句以后的...

C语言用IF为什么没有输出y值
X没有初始化,也就是说一开始,你X没有值。。补充小知识(JAVA中INT类型,系统自动初始化值为0)呵呵

...去掉了scanf后面的printf,运行时就没有输入输出,直接结束。_百度知 ...
有可能是因为输入缓冲区没有清空,所以没有让用户输入的动作。在scanf("%d",&a);之前做一次清空输入缓冲区的动作应该就会正常了,即调用一次 fflush(stdin);没有输出可能是因为没有遇到换行符,部分编译器是会这样的,要遇到换行才去输出,你可以在return 0;之前输出一次换行,应该就可以了,即调用...

为什么下面这个程序的运行结果为1?请高人指点
a=100;所以if(a>100)为假(a不大于100);所以执行else printf("%d\\n",a<=100);printf里面是"%d\\n"输出一个整数,而这个整数是a<=100,这是一个表达式,只能输出为真或为假,也就是1或0;而a=100所以a<=100为真,即输出1。

C语言中if(1&&1) printf("TWO"); 这个会不会运行后面的输出
会,两个1都是条件为真,所以会运行

相似回答