c++代码if else结构中为什么else后面不能加{}?

#include <iostream>using namespace std;int main(){ int N,a,b,c=0,d=0,i,j,num; cin>>N>>a; b=a; for(i=1;i<N;i++) { cin>>j; cout<<"j="<<j<<endl; if(j>a) { b+=(j-a); cout<<"b="<<b<<endl; } else if(j=a) c++; else(j<a) { d+=(a-j); cout<<"d="<<d<<endl; } a=j; cout<<"a="<<a<<endl; } num=5*(N+c)+6*b+4*d; cout<<num; return 0;}

第1个回答  2019-07-06
else后面可以加{},只是上面一行else (j<a)出错,else后面一般没有条件,后面所有条件也不能直接跟条件表达式,一定要有if。
本程序else后面的(j<a)省略就可以了。
第2个回答  2019-07-06

要把

else if ( j=a ) c++;

else(j<a)

改成

else if ( j==a ) c++;

else if ( j<a )

本回答被网友采纳
第3个回答  2019-07-06
不是ELSE后面不能加大括号,而是ELSE后面不能直接加条件。ELSE表示其它状况或剩余部分,如果要加的话,再加上IF再次去做判断。
第4个回答  2019-07-06
把else后面的(j<a)去掉,要不就加if条件判断,只有if以后才能加判断条件
第5个回答  2019-07-05
(j<a)多余 去掉
另外,上面if的j=a应该是j==a

c++代码if else结构中为什么else后面不能加{}?
else后面可以加{},只是上面一行else (j<a)出错,else后面一般没有条件,后面所有条件也不能直接跟条件表达式,一定要有if。本程序else后面的(j

为什么c++中的if和else后面没有分号呢?
因为if else没结束,要么去掉分号,要么给他加上{ }。1、先说结论:说明你的else是独立的。2、出错原理:c语言里,有if不一定有else,但是有else一定要有相对应的if。3、解决方法:这种情况你往前推一下,所有的else能不能跟相应的if对应,很容易就找到了。4、良好习惯:虽然c语言不要求通过tab或...

c++中if+else语句中else不加大括号是什么用法?
在 C++ 中,if-else 语句是可以省略花括号 {} 的,但是建议不要这么做,因为这样会使代码变得不易阅读,也容易出错。如果省略了 else 分支的花括号,那么只有一条语句会被视为 else 分支的一部分。例如:c++Copy codeif (x > 0) { cout << "x is positive" << endl;} else cout << "x...

c++中else if 是什么意思呢?else后面能不能加分号呢?
else if是一个完整的新的条件判断分支,如果是中间判断分支的话,中间即else后面不能加分号的,如果是最后一个else后面加分号,则表示程序执行到该分支,不执行任何动作,然后继续往下执行,可以认为执行空语句。

C++中else if 语句为什么后边有一个()和大括号{},不应该只是一个()或 ...
()是条件判断部分,大括号是条件成立,要执行的部分。如果条件成立,只执行一句语句或者一个语句块,所以要执行多句语句的时候要用大括号括起来。

c++ if……else……语句的格式
是C的else

C语言if else语句在else那儿老是提示输入语句怎么回事?
if else while for等都不是完整的一句话,因为他后面没有分号 记住,他后面必须包涵一句话,也就是一个分号,而且只能是一个分号(一句话)要是包涵多句话,需要用{}花括号括起来,让他当成一句话 你这个小程序,明显是包涵要两句话,所以要用花括号括起来 这么说,你明白了吧 在c中,要是看不...

C++为什么总是提示没有if匹配的非法else
在每个else if 后面的语句需要用花括号{ }括起来,不然系统认为就是没有对应的if语句了。如果if语句后面只有一条语句,花括号是可以省略。如果不止一条,就必须用括号括起来。用法如下:if(){ } else if(){ ...}

c++中在if...else if里为什么会忽略掉else if
C++不会忽略,如果有一个 else没有配对的 if,它都会报语法错误,我估计你遇到 一些 自己解释不了的问题就认为它被忽略了

C++中for的用法下面什么时候加{ } 又什么时候不加{ }呢?
你的说法是对的,一条语句可以不加{},而多条语句必需加{},但是,一般C++编程规范都是这样要求的:规则:if、else、else if、for、while、do等语句自占一行,执行语句不得紧跟其后。不论执行语句有多少都要加 { }。说明:这样可以防止书写失误,也易于阅读。正例:if (varible1 < varible2){ v...

相似回答