C++程序中的选择结构

简介: C++程序中的选择结构

选择结构是C++编程中的基本控制结构之一,它允许程序根据条件执行不同的代码路径。通过使用选择结构,我们可以实现基于条件的决策,从而控制程序的执行流程。在本篇文章中,我们将深入探讨C++中的选择结构,包括if语句、switch语句以及条件运算符,并通过示例代码来展示它们的用法。

首先,让我们来看if语句。if语句是最基本的选择结构,它允许程序根据条件的真假来执行不同的代码块。if语句的一般形式如下:

```cpp
if (条件) {
    // 条件为真时执行的代码
} else {
    // 条件为假时执行的代码
}
```

如果条件为真,则执行if语句块中的代码;如果条件为假,则执行else语句块中的代码。如果只有一个代码块需要执行,也可以省略else部分。

现在,让我们通过一个示例来演示如何使用if语句。假设我们要编写一个程序,根据用户输入的整数来判断它是正数、负数还是零。

```cpp
#include <iostream>
using namespace std;

int main() {
    int number;

    cout << "请输入一个整数: ";
    cin >> number;

    if (number > 0) {
        cout << "这是一个正数。" << endl;
    } else if (number < 0) {
        cout << "这是一个负数。" << endl;
    } else {
        cout << "这是零。" << endl;
    }

    return 0;
}
```

在上面的代码中,我们使用了if语句来判断用户输入的整数是正数、负数还是零。根据条件的不同,程序会执行相应的代码块,并输出相应的结果。

除了if语句外,C++还提供了switch语句作为另一种选择结构。switch语句允许程序根据一个变量的值来执行不同的代码块。它的一般形式如下:

```cpp
switch (表达式) {
    case 常量1:
        // 当表达式等于常量1时执行的代码
        break;
    case 常量2:
        // 当表达式等于常量2时执行的代码
        break;
    ...
    default:
        // 当表达式不等于任何常量时执行的代码
}
```

switch语句中,表达式的值会与每个case后面的常量进行比较。如果找到匹配的常量,程序就会执行该case块中的代码,直到遇到break语句为止。如果没有匹配的常量,程序就会执行default块中的代码。

让我们通过一个示例来演示如何使用switch语句。假设我们要编写一个程序,根据用户输入的一个字符来判断它是数字、字母还是其他字符。

```cpp
#include <iostream>
using namespace std;

int main() {
    char ch;

    cout << "请输入一个字符: ";
    cin >> ch;

    switch (ch) {
        case '0': case '1': case '2': case '3': case '4':
        case '5': case '6': case '7': case '8': case '9':
            cout << "这是一个数字。" << endl;
            break;
        case 'a': case 'b': case 'c': case 'd': case 'e':
        case 'f': case 'g': case 'h': case 'i': case 'j':
        case 'k': case 'l': case 'm': case 'n': case 'o':
        case 'p': case 'q': case 'r': case 's': case 't':
        case 'u': case 'v': case 'w': case 'x': case 'y': case 'z':
            cout << "这是一个小写字母。" << endl;
            break;
        case 'A': case 'B': case 'C': case 'D': case 'E':
        case 'F': case 'G': case 'H': case 'I': case 'J':
        case 'K': case 'L': case 'M': case 'N': case 'O':
        case 'P': case 'Q': case 'R': case 'S': case 'T':
        case 'U': case 'V': case 'W': case 'X': case 'Y': case 'Z':
            cout << "这是一个大写字母。" << endl;
            break;
        default:
            cout << "这是一个其他字符。" << endl;
    }

    return 0;
}
```

在上面的代码中,我们使用了switch语句来判断用户输入的字符是数字、字母还是其他字符。根据字符的不同,程序会执行相应的case块中的代码,并输出相应的结果。

最后,让我们来看看条件运算符。条件运算符是C++中的三元运算符,它允许我们根据条件表达式的结果来选择两个值中的一个。它的一般形式如下:

```cpp
条件表达式 ? 表达式1 : 表达式2;
```

如果条件表达式为真,则返回表达式1的值;如果条件表达式为假,则返回表达式2的值。

让我们通过一个示例来演示如何使用条件运算符。假设我们要编写一个程序,根据用户输入的两个整数来计算它们的最大值。

```cpp
#include <iostream>
using namespace std;

int main() {
    int a, b;

    cout << "请输入两个整数: ";
    cin >> a >> b;

    int max = (a > b) ? a : b;

    cout << "最大值是: " << max << endl;

    return 0;
}
```

在上面的代码中,我们使用了条件运算符来判断用户输入的两个整数哪个更大,并将其赋值给变量max。然后,程序输出最大值。

通过本文的学习,您应该已经了解了C++中的选择结构,包括if语句、switch语句和条件运算符。这些结构是C++编程中的基础,它们允许我们根据条件执行不同的代码路径。掌握这些知识将有助于您编写更高效、更可读的C++代码。在实际编程中,合理利用选择结构将提高程序的逻辑性和可维护性。

目录
相关文章
|
3月前
|
C++
C++ 根据程序运行的时间和cpu频率来计算在另外的cpu上运行所花的时间
C++ 根据程序运行的时间和cpu频率来计算在另外的cpu上运行所花的时间
44 0
|
1月前
|
存储 程序员 编译器
简述 C、C++程序编译的内存分配情况
在C和C++程序编译过程中,内存被划分为几个区域进行分配:代码区存储常量和执行指令;全局/静态变量区存放全局变量及静态变量;栈区管理函数参数、局部变量等;堆区则用于动态分配内存,由程序员控制释放,共同支撑着程序运行时的数据存储与处理需求。
101 21
|
2月前
|
C++
【C++基础】程序流程结构详解
这篇文章详细介绍了C++中程序流程的三种基本结构:顺序结构、选择结构和循环结构,包括if语句、三目运算符、switch语句、while循环、do…while循环、for循环以及跳转语句break、continue和goto的使用和示例。
45 2
|
3月前
|
C++ 容器
【C++航海王:追寻罗杰的编程之路】关联式容器的底层结构——AVL树
【C++航海王:追寻罗杰的编程之路】关联式容器的底层结构——AVL树
32 5
|
3月前
|
PHP C++ Python
右手坐标系,空间点绕轴旋转公式&程序(Python和C++程序)
右手坐标系,空间点绕轴旋转公式&程序(Python和C++程序)
63 0
|
3月前
|
C++
c++学习笔记03 程序流程结构
C++学习笔记,主要介绍了程序流程结构,包括顺序结构、选择结构和循环结构。选择结构中详细解释了if语句、三目运算符和switch语句的用法和注意事项。循环结构部分则涵盖了while循环、do-while循环和for循环的语法和使用技巧。此外,还介绍了跳转语句,包括break、continue和goto语句的用途和用法。
35 0
|
3月前
|
关系型数据库 C++ 容器
【C++航海王:追寻罗杰的编程之路】关联式容器的底层结构——红黑树
【C++航海王:追寻罗杰的编程之路】关联式容器的底层结构——红黑树
35 0
|
5月前
|
存储 算法 编译器
程序与技术分享:C++模板元编程简介
程序与技术分享:C++模板元编程简介
44 0
|
5月前
|
存储 JavaScript 前端开发
程序与技术分享:C++程序设计实验考试准备资料(2019级秋学期)
程序与技术分享:C++程序设计实验考试准备资料(2019级秋学期)