让输入由大到小的五个数,为什么如下写输入5 4 3 2 1会让重新输入呢,但是去掉else flag=0这一语句输入5 4 3 2 1 就正确了,想了半天不懂错在哪,希望大神指点一下愚蠢的我😢!int main(){ int a[5],i,flag=0; while(flag==0) { printf("enter data:\n"); for(i=0;i<5;i++) scanf("%d",&a[i]); for(i=0;i<5;i++) {if(a[i]>a[i+1]) flag=1; else flag=0;} } return 0;}
懂的明明白白了,感谢大神!
本回答被提问者采纳为什么我的代码里else if总是出错?
1、先说结论:说明你的else是独立的。2、出错原理:c语言里,有if不一定有else,但是有else一定要有相对应的if。3、解决方法:这种情况你往前推一下,所有的else能不能跟相应的if对应,很容易就找到了。4、良好习惯:虽然c语言不要求通过tab或者space来区分上下级关系,但是要养成良好书写习惯,比如说...
一道c语言题: if(){};\/\/ else{};
首先,要知道else配对的是哪个if,这个配对方法很简单,由于没加括号,直接往上行找离它最近的没配对的if就行。本题与else配对的是第二个if;其次,由于没有加括号,第一个if只能控制下一行的语句,即第二个if;第一个if无效,所以程序判定下一行的第二个if无效,而再往下一行的语句又受第二个if控...
c语言if-else循环问题
if(x)括号里面相当于布尔型变量,1为真,0为假。真,执行if;假,执行else。main()int x=1,y=0; if (!x) y++; \/\/!x=0,这里不做y++,直接跳下步elseelse if (x==) \/\/(x==??)这个不懂,当不存在吧。。if(x) y+=2; \/\/执行y+=2else y+=3;printf("%d",y...
为什么这段if-else语句的条件没有生效?无论输入什么输出都是1_百度知 ...
语法错误!您也够懒,大括号都懒得加,if,else语句后如果只有一句执行语句,可以不加 { },多于一句必须要加 { },个何况您循环嵌套了!还是不要偷懒,改写就写吧.
c语言的一个简单if...else语句的问题
1、在a中:如果if中的条件为真,则执行if中的代码块;条件为假,则判断第一个if else后的条件,为真执行其中代码,否则再判断第二个if else分支的条件...如果 if、if else\/\/第一个、if else\/\/第二个的条件都不满足,则执行最后的else中的代码 2、在b中:可以看出是多重嵌套 实际就相当于 ...
很简单的c语言问题,关于if-else语句的
else printf("%d\\n",i=i-j); \/\/为什么取到这里呢!因为你没打大括号 所以只会处理到if或else后面一句 === printf("%d\\n",i); \/\/这里的不能归到if (i==1)的范围 也是因为你没打大括号 也就是说if (i==1)的"if"到if (j==1)这里就没效了 后面就不归它管了 return 0;} 你...
在c语言程序中if-else语句的else语句总是不执行是怎么回事
1、新建一个工程和文件,命名为Third和first.c , 然后书写好程序的模板结构。2、首先我们演示一个很不规范的代码写法,很多初学者容易写成这样,导致出现意想不到的运行结果。3、很多初学者就会不知所措,其实只要把代码按照正确的缩进方式书写,就可以很一目了然了。4、这样书写过之后,就很清楚了...
c语言if else 语句中的问题
else (e>=14)-> 把(e>=14)去掉 另外, c在判断相等的时候是 e==11 双等号。这个编译的时候查不出来,但结果肯定就错了。
C语言if……else if多分支问题
条件语句中出错了,你写的是else if(0<x<=10),其实只用写 else if (x <= 10)而且(0<x<=10)表示 0<x的结果,即逻辑判断结果 如果 x > 0 则为真,结果为1,否则为0,再与10比较, 不管是1,还是0,<=10始终为真。所以,只要不执行第一个if语句的内容,就都执行y = 3*x*...
求大神关于c语言if与else的的问题。。。程序很简单,就是不知道为什么有...
我知道你的问题出在哪里。你说好像只循环了一次,而且if和else都执行了,其实那是不可能的。实际是这样的,循环执行了两次,第一次执行的是if语句,所以i自加了1,没有执行else 第二次没有执行if语句,直接执行的else语句,就会是这样的结果。至于你说没有达到执行else的条件,那只是你觉得,计算机...