C++ 条件与 If 语句:掌握逻辑判断与流程控制精髓

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
函数计算FC,每月15万CU 3个月
可观测监控 Prometheus 版,每月50GB免费额度
简介: C++ 中的条件语句用于根据布尔表达式的真假执行不同代码。`if` 用于当条件为真时执行一段代码,`else` 配合 `if` 在条件不成立时执行另一段代码。`else if` 允许测试额外的条件。`switch` 语句提供多分支选择。还有三元运算符 `(condition) ? expressionTrue : expressionFalse`,它是一种简写的 if...else 形式,常用于一行内作出决定。

C++ 条件和 If 语句

您已经知道 C++ 支持数学中的常见逻辑条件:

  • 小于:a < b
  • 小于或等于:a <= b
  • 大于:a > b
  • 大于或等于:a >= b
  • 等于:a == b
  • 不等于:a != b

您可以使用这些条件来针对不同的决定执行不同的操作。

C++ 具有以下条件语句:

  • 使用 if 来指定一个代码块,如果指定的条件为 true,则执行该代码块
  • 使用 else 来指定一个代码块,如果相同的条件为 false,则执行该代码块
  • 使用 else if 来指定一个新的条件进行测试,如果第一个条件为 false,则执行该条件
  • 使用 switch 来指定许多替代代码块来执行

if 语句

使用 if 语句来指定一个代码块,如果条件为 true,则执行该代码块。

语法

if (condition) {
   
  // 如果条件为 true,则执行的代码块
}

请注意,if 是小写字母。大写字母(IfIF)将生成错误。

在下面的示例中,我们测试两个值,以判断 20 是否大于 18。如果条件为 true,则打印一些文本:

示例

if (20 > 18) {
   
  cout << "20 is greater than 18";
}

我们也可以测试变量:

示例

int x = 20;
int y = 18;
if (x > y) {
   
  cout << "x is greater than y";
}

示例解释

在上面的示例中,我们使用两个变量 xy 来测试 x 是否大于 y(使用 > 运算符)。由于 x 是 20,y 是 18,我们知道 20 大于 18,因此我们打印到屏幕上的是 "x is greater than y"。

如果 x 大于 y,则打印 "Hello World"。

int x = 50;
int y = 10;
if (x > y) {
   
  cout << "Hello World";
}

else 语句

使用 else 语句来指定一个代码块,如果条件为 false,则执行该代码块。

语法

if (condition) {
   
  // 如果条件为 true,则执行的代码块
} else {
   
  // 如果条件为 false,则执行的代码块
}

示例

int time = 20;
if (time < 18) {
   
  cout << "Good day.";
} else {
   
  cout << "Good evening.";
}
// 输出 "Good evening."

示例解释

在上面的示例中,时间(20)大于 18,因此条件为 false。因此,我们进入 else 条件,并打印到屏幕上 "Good evening"。如果时间少于 18,则程序会打印 "Good day"。

else if 语句

使用 else if 语句在第一个条件为 false 时指定一个新条件。

语法

if (condition1) {
   
  // 如果 condition1 为 true,则执行的代码块
} else if (condition2) {
   
  // 如果 condition1 为 false 且 condition2 为 true,则执行的代码块
} else {
   
  // 如果 condition1 和 condition2 均为 false,则执行的代码块
}

示例

int time = 22;
if (time < 10) {
   
  cout << "Good morning.";
} else if (time < 20) {
   
  cout << "Good day.";
} else {
   
  cout << "Good evening.";
}
// 输出 "Good evening."

示例解释

在上面的示例中,时间(22)大于 10,因此第一个条件为 false。在 else if 语句中的下一个条件也为 false,因此我们进入 else 条件,因为 condition1condition2 均为 false,并打印到屏幕上 "Good evening"。

然而,如果时间为 14,我们的程序将打印 "Good day"。

C++ 简写 If Else

简写 If...Else(三元运算符)

还有一种简写的 if else,称为三元运算符,因为它由三个操作数组成。它可以用来用单行代码替换多行代码。通常用于替换简单的 if else 语句:

语法

variable = (condition) ? expressionTrue : expressionFalse;

而不是编写:

示例

int time = 20;
if (time < 18) {
   
  cout << "Good day.";
} else {
   
  cout << "Good evening.";
}

您可以简单地编写:

示例

int time = 20;
string result = (time < 18) ? "Good day." : "Good evening.";
cout << result;

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎点赞、收藏、关注

相关文章
|
2月前
|
C++
【C++】C++ STL 探索:List使用与背后底层逻辑(三)
【C++】C++ STL 探索:List使用与背后底层逻辑
|
2月前
|
C++
【C++】C++ STL 探索:List使用与背后底层逻辑(二)
【C++】C++ STL 探索:List使用与背后底层逻辑
|
2月前
|
存储 编译器 C++
【C++】C++ STL 探索:List使用与背后底层逻辑(一)
【C++】C++ STL 探索:List使用与背后底层逻辑
|
2月前
|
C++
【C++】C++ STL探索:Vector使用与背后底层逻辑(三)
【C++】C++ STL探索:Vector使用与背后底层逻辑
|
2月前
|
编译器 Linux C++
【C++】C++ STL探索:Vector使用与背后底层逻辑(二)
【C++】C++ STL探索:Vector使用与背后底层逻辑
|
2月前
|
编译器 C++ 容器
【C++】C++ STL探索:Vector使用与背后底层逻辑(一)
【C++】C++ STL探索:Vector使用与背后底层逻辑
|
2月前
|
C++
【C++】C++STL 揭秘:Strng背后的底层逻辑(三)
【C++】C++STL 揭秘:Strng背后的底层逻辑
|
2月前
|
存储 C++ 索引
【C++】C++STL 揭秘:Strng背后的底层逻辑(二)
【C++】C++STL 揭秘:Strng背后的底层逻辑
|
2月前
|
编译器 Serverless C++
【C++】C++STL 揭秘:Strng背后的底层逻辑(一)
【C++】C++STL 揭秘:Strng背后的底层逻辑
|
2月前
|
程序员 C++
C++编程:While与For循环的流程控制全解析
总结而言,`while`循环和 `for`循环各有千秋,它们在C++编程中扮演着重要的角色。选择哪一种循环结构应根据具体的应用场景、循环逻辑的复杂性以及个人的编程风格偏好来决定。理解这些循环结构的内在机制和它们之间的差异,对于编写高效、易于维护的代码至关重要。
75 1