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

   更新日期:2024.04.22

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语句



if是条件判断语句,只有if的条件成立(表达式的值为真)后,才会执行if部分的代码,否则将会执行else的代码。
如果是if...else if,则满足第一个if执行第一个if里的代码,如果不满足第一个if,而满足第二个if,则执行第二个if(即else if)的代码,如果都不满足,就不执行,如果后面有else(不带if的else),则只要前面的if和else if都没执行,就执行最后一个else。

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/*否则*/
{
}

(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语句匹配。

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
}
}

  • 18167871683 :if else在c语言中的用法
    利利味5188 :答:if else在C语言中的用法包括加附加条件、单独使用等等。1、加附加条件 if后面加一个条件,如果条件成立,则执行if语句里面的内容,如果不成立,则执行else语句内的内容。如果还有else if语句的话,if语句不成立,则进行else ...
  • 18167871683 :C语言中else if语句与if。 else语句分别是什么意思?我搞糊涂了_百度...
    利利味5188 :答:在C语言中,对于if语句,else字句与if字句的配对约定是 大致如下: 1、 if() { } 2、 if() { } else { } 3、 if() { } else if() { } 4、 if() { } else if()...
  • 18167871683 :if, elseif和else的主要区别是什么?
    利利味5188 :答:C语言中if,elseif和else的主要区别是用法的区别。if语句用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一。如果后面没有连接else则判断为假时不执行任何操作。else if是镶嵌在if语句里的...
  • 18167871683 :为什么C++中if后面跟一句elseif
    利利味5188 :答:因为if else没结束,要么去掉分号,要么给他加上{ }。1、先说结论:说明你的else是独立的。2、出错原理:c语言里,有if不一定有else,但是有else一定要有相对应的if。3、解决方法:这种情况你往前推一下,所有的else能...
  • 18167871683 :c语言if else语句格式
    利利味5188 :答:c语言if else语句格式:当if体或else体为一条简单语句时,可以省略{}。if是条件判断语句,只有if的条件成立(表达式的值为真)后,才会执行if部分的代码,否则将会执行else的代码。如果是if...else if,则满足第一个if...
  • 18167871683 :关于C语言中if,elseif和else的区别在哪里
    利利味5188 :答:关于C语言中if,elseif和else的区别在哪里 if是条件判断语句,只有if的条件成立(表达式的值为真)后,才会执行if部分的代码,否则将会执行else的代码。 如果是if...else if,则满足第一个if执行第一个if里的代码,...
  • 18167871683 :c语言if else语句是什么?
    利利味5188 :答:else printf("是普通三角形");是一对,再外面的也是一对。在同一个 if 结构中可以有多个 elseif 语句。第一个表达式值为 TRUE 的 elseif 语句(如果有的话)将会执行。在 php 中,也可以写成“else if”(两个单词...
  • 18167871683 :一个c语言的题目关于if和else if
    利利味5188 :答:1]==2)的话,就是只要满足(a[1]==2)就可以了 而如果是else if(a[1]==2)的话,是再a[0]==1不满足的情况下,即a[0]不为1,并且a[1]为2,才执行,printf("the no.1 number is the no.2\n");。
  • 18167871683 :关于C语言中if else的用法,高手来帮下忙
    利利味5188 :答:语句1;else if(表达式2)语句2;else if(表达式3)语句3;…else if(表达式m)语句m;else 语句n;其语义是:依次判断表达式的值,当出现某个值为真时,则执行其对应的语句。然后跳到整个if语句之外继续执行程序。
  • 18167871683 :C语言中if连用的语句形式与if,else if (连用)的语句形式有什么区别_百 ...
    利利味5188 :答:而if连用,无论上一个是否成立,都会执行后续每个。比如 int a = 10;if(a > 100);//1 else if(a> 5); //2 if(a > 100);//3 if(a> 5); //4对于a = 10的情况,二者没有区别。都是执行2 和4部分 ...
  • 相关链接

    欢迎反馈与建议,请联系电邮
    2024 © 视觉网