C++if语句可以省略else吗?这个例子没有eles啊·?如果说是if(·····)m=a;n=b;elsem=b;n=a;如果去除了else的话 那不是会出错吗

来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/23 20:07:36
C++if语句可以省略else吗?这个例子没有eles啊·?如果说是if(·····)m=a;n=b;elsem=b;n=a;如果去除了else的话那不是会出错吗C++if语句可以省略else吗?这个

C++if语句可以省略else吗?这个例子没有eles啊·?如果说是if(·····)m=a;n=b;elsem=b;n=a;如果去除了else的话 那不是会出错吗
C++if语句可以省略else吗?

这个例子没有eles啊·?
如果说是
if(·····)
m=a;
n=b;
else
m=b;
n=a;
如果去除了else的话 那不是会出错吗

C++if语句可以省略else吗?这个例子没有eles啊·?如果说是if(·····)m=a;n=b;elsem=b;n=a;如果去除了else的话 那不是会出错吗
可以,但是图中情况并不是“不需要处理假的情况”.而是:若满足括号中条件,返回x(返回即是函数的结束,不再向下处理);否则,继续向下走返回y.
这个例子可以抽象成这样一个逻辑图:
|
|--if()--return x;---回到上层函数
|
return y;--回到上层函数
如果说是
if(·····)
m=a;
n=b;
else
m=b;
n=a;
如果去除了else的话 那不是会出错吗
答:首先纠正你一个错误,你的意思应该是
if(·····)
{
m=a;
n=b;
}
else
{
m=b;
n=a;
}
不论是if还是else都只管向下一条语句,所以多条语句要用 { } 括起来作为复合语句.
在你举的这个例子里,else是不能去的.因为如果(……)不满足,要执行else后的语句.
但是,如果(……)不满足时,不做任何处理,这时就不需要else了.所以,else是否需要写全看你要用函数实现什么功能.
说else可以不要,是单从语法角度说的,如果一个if后面没有else,是没有语法错误的.