C++基础(10)C/C++ 中的判断(if , if..else, 嵌套 if, if-else-if )

737 阅读2分钟

我报名参加金石计划1期挑战——瓜分10万奖池,这是我的第10篇文章,点击查看活动详情

现实生活中会出现一些情况,当我们需要做出一些决定时,我们会根据这些决定决定下一步应该做什么。在编程中也会出现类似的情况,我们需要做出一些决定,并基于这些决定,我们将执行下一个代码块。例如,在 C 中,如果出现 x,则执行 y,否则执行 z。也可以有多个条件,例如在 C 中,如果 x 发生则执行 p,否则如果条件 y 发生则执行 q,否则执行 r。C else-if 的这个条件是导入多个条件的众多方式之一。

C/C++ 中的 if 语句

if 语句是最简单的决策语句。它用于决定是否执行某个语句或语句块,即如果某个条件为真,则执行一个语句块,否则不执行。 
语法

if(condition) 
{
   // 条件为真时执行的语句
}

在这里,评估后的条件将是真或假。C if 语句接受布尔值——如果值为真,那么它将执行它下面的语句块,否则不执行。如果我们在 if(condition) 之后没有提供花括号 '{' 和 '}',那么默认情况下 if 语句将认为下面的第一个语句位于其块内。 
示例

if(condition)
   statement1;
   statement2;

// 这里如果条件为真, if 块将只考虑 statement1 在其块内。

流程图

image.png

// C++程序说明If语句
#include<iostream>
using namespace std;

	int main()
	{
		int i = 10;

		if (i > 15)
		{
		cout<<"10 is less than 15";
		}
		
		cout<<"I am Not in if";
	}

输出: 

I am Not in if

 

因为 if 语句中存在的条件为假。因此,if 语句下面的块不会被执行。

C/C++ 中的 if-else

单独的if语句告诉我们,如果条件为真,它将执行一个语句块,如果条件为假,则不会。但是,如果条件为假,我们想做其他事情怎么办。这里出现了 C else语句。当条件为假时,我们可以使用else语句和if语句来执行代码块。 
语法

if (condition)
{
    // 如果条件为真,则执行此块
}
else
{
    // 如果条件为假,则执行此块
}

流程图

image.png

例子:

// 说明 if-else 语句的 C++ 程序
#include<iostream>
using namespace std;

int main()
{
		int i = 20;

		if (i < 15)
			cout<<"i is smaller than 15";
		else
			cout<<"i is greater than 15";
			
	return 0;
}

输出: 

i is greater than 15

 

当if语句中存在的条件为假时,执行else语句之后的代码块。**

C/C++ 中的嵌套 if

C 中的嵌套 if 是一个 if 语句,它是另一个 if 语句的目标。嵌套 if 语句意味着 if 语句位于另一个 if 语句中。是的,C 和 C++ 都允许我们在 if 语句中嵌套 if 语句,也就是说,我们可以将 if 语句放在另一个 if 语句中。 
语法:

if (condition1) 
{ 
   // 当 condition1 为真时执行
   if (condition2) 
   { 
      // 当 condition2 为真时执行
   } 
}

流程图

image.png

例子:

// 用于说明嵌套 if 语句的 C++ 程序
#include <iostream>
using namespace std;

int main()
{
	int i = 10;

	if (i == 10)
	{
		// 第一个 if 语句
		if (i < 15)
		cout<<"i is smaller than 15\n";

		// 嵌套 - if 语句只有在上面的语句为真时才会执行
		if (i < 12)
			cout<<"i 也小于 12\n";
		else
			cout<<"i 小于 15 ";
	}

	return 0;
}

输出: 

i 小于 15 
i 也小于 12

 

C/C++ 中的 if-else-if 阶梯

在这里,用户可以在多个选项中做出决定。C if 语句是自上而下执行的。一旦控制 if 的条件之一为真,与该 if 关联的语句就会被执行,并且 C else-if 阶梯的其余部分被绕过。如果没有一个条件为真,那么最后的 else 语句将被执行。 
语法:

if (condition)
    statement;
else if (condition)
    statement;
.
.
else
    statement;

image.png

例子:

// 说明 if-else-if 梯形图的 C++ 程序
#include<iostream>
using namespace std;

int main()
{
	int i = 20;

	if (i == 10)
		cout<<"i is 10";
	else if (i == 15)
		cout<<"i is 15";
	else if (i == 20)
		cout<<"i is 20";
	else
		cout<<"i is not present";
}

输出: 

i is 20