关于C语言中if,elseif和else的区别在哪里

如题所述

C语言中if,elseif和else的主要区别是用法的区别。

if语句用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一。如果后面没有连接else则判断为假时不执行任何操作。

else if是镶嵌在if语句里的,如果一个程序需要2个或以上的if语句时,则使用else if语句,表示条件判断为假时,再次进行条件判断。

else必须使用在if语句里,如果没有if,就不能使用else。

扩展资料

if语句和else if语句的结构

1、if

if(express)语句1 

else 语句2 

当express为真时,执行语句1,假时执行语句2,只能是一个语句,那么如果要使用多个语句,必须使用{}表示语句块

2、else if

if(express1)语句1 

else if(express2) 语句2 

else 语句3 

因为一个if结构可以称为一个复合语句,所以,在这个嵌套if中,第二个if为一个语句,前者是第二个if为第一个if的else分支的语句,而后者为平行的两个if分支复合语句。

参考资料来源:百度百科——if语句

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-09-21
if是条件判断语句,只有if的条件成立(表达式的值为真)后,才会执行if部分的代码,否则将会执行else的代码。
如果是if...else if,则满足第一个if执行第一个if里的代码,如果不满足第一个if,而满足第二个if,则执行第二个if(即else if)的代码,如果都不满足,就不执行,如果后面有else(不带if的else),则只要前面的if和else if都没执行,就执行最后一个else。
第2个回答  2011-08-07
if,else if都需要接判断表达式。else不需要判断表达式。

使用else if和else,必须紧跟在if之后,形参if-esle if组或if-else对。 没有对应的if语句,else if和else语句都会在编译时报错。

if(condition1) /*如果满足条件1*/
{
}
else if(condition2)/*否则,如果满足条件2*/
{
}
else/*否则*/
{
}本回答被提问者采纳
第3个回答  2011-08-07
(1)if,else if需要接判断表达式,只有在满足条件的时候执行
而else语句是在前面条件都不满足的时候才能执行
(2) 一个if...else if...else语句中可以有多个else if语句,但是最多只能有一个else语句
(3)if语句可以不需要else if或者else语句,可独立成分支逻辑,但是else if和else必须要有if引导,如果不能找到对应的if语句,也会报错。
(4)嵌套使用的时候else if和else遵循就近原则,和上面最靠近该语句的if语句匹配。
第4个回答  2011-08-07
if(条件1)
{
//动作1
}
//和if说再见
如果条件1成立,执行动作1,否则不执行动作,直接离开,往下走,动作1可能执行也可能不执行。
if(条件1)
{
//动作1
}
else
{
//动作2
}
//和if语句说再见
如果条件1成立,执行动作1后离开往下走,否则执行动作2后离开往下走。动作1和动作2必有一个且只有一个被执行。
else if就是个嵌套语句。
if(条件1)
{
//动作1
}
else if(条件2)
{
//动作2
}
//和if语句说再见
当条件1为真时,执行动作1,跳过else,离开,与上在的if...else一样。如果条件1为假,执行else部分,这也是一个条件语句,动作2的执行要看条件2的情况。判断条件2的大前提是条件1为假。其实你只要懂了if和if...else语句,多少层的else if都不怕。如果把else if写成下面的形式,我想你一看就明白了。
if(条件1)
{
//动作1
}
else
{//因为下面的语句虽是复合语句,但只是一条语句,把这一对括号省去之后,看得更明白了吧。
if(条件2)
{
//动作2
}
}
相似回答