C++ 使用字符打印反向半金字塔模式

C++C++Beginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

介绍

在本实验中,我们将学习如何使用 C++ 打印一个由字符组成的反向半金字塔结构。这个模式可以通过利用 C++ 中的嵌套循环结构来生成。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL cpp(("`C++`")) -.-> cpp/BasicsGroup(["`Basics`"]) cpp(("`C++`")) -.-> cpp/ControlFlowGroup(["`Control Flow`"]) cpp(("`C++`")) -.-> cpp/IOandFileHandlingGroup(["`I/O and File Handling`"]) cpp(("`C++`")) -.-> cpp/SyntaxandStyleGroup(["`Syntax and Style`"]) cpp/BasicsGroup -.-> cpp/variables("`Variables`") cpp/BasicsGroup -.-> cpp/strings("`Strings`") cpp/ControlFlowGroup -.-> cpp/for_loop("`For Loop`") cpp/IOandFileHandlingGroup -.-> cpp/output("`Output`") cpp/IOandFileHandlingGroup -.-> cpp/user_input("`User Input`") cpp/IOandFileHandlingGroup -.-> cpp/files("`Files`") cpp/SyntaxandStyleGroup -.-> cpp/code_formatting("`Code Formatting`") subgraph Lab Skills cpp/variables -.-> lab-96221{{"`C++ 使用字符打印反向半金字塔模式`"}} cpp/strings -.-> lab-96221{{"`C++ 使用字符打印反向半金字塔模式`"}} cpp/for_loop -.-> lab-96221{{"`C++ 使用字符打印反向半金字塔模式`"}} cpp/output -.-> lab-96221{{"`C++ 使用字符打印反向半金字塔模式`"}} cpp/user_input -.-> lab-96221{{"`C++ 使用字符打印反向半金字塔模式`"}} cpp/files -.-> lab-96221{{"`C++ 使用字符打印反向半金字塔模式`"}} cpp/code_formatting -.-> lab-96221{{"`C++ 使用字符打印反向半金字塔模式`"}} end

创建一个新的 C++ 源文件

首先,让我们创建一个新的 C++ 源文件。打开终端并导航到 ~/project 目录。使用以下命令创建一个名为 main.cpp 的 C++ 源文件:

cd ~/project
touch main.cpp

编写 main 函数

我们程序的第一步是编写 main 函数。这个函数将包含我们在程序中使用的所有其他函数和数据结构。我们首先引入 iostream 库,它用于输入/输出操作。

#include <iostream>

int main() {
    // Code goes here
    return 0;
}

向用户询问金字塔的行数

下一步是向用户询问金字塔的行数。我们可以使用 cincout 函数来实现这一点。

std::cout << "Enter the number of rows in the pyramid: ";
int rows;
std::cin >> rows;

使用嵌套循环生成模式

现在,让我们使用字符生成反向半金字塔模式。这里的方法是使用嵌套循环。外层循环将遍历金字塔的行,内层循环将遍历该行的每一列。以下是生成模式的代码。

char c, first, last; // 定义变量
for(int i = rows; i >= 1; i--) { // 外层循环
    first = 'A';
    last = first + i - 1; // 定义最后一个元素
    c = 'A'; // 变量 `c` 被定义为 `A`
    for(int j = 1; j <= i; j++) { // 内层循环
        std::cout << c << " "; // 打印字符和空格
        c++; // 切换到下一个字符
    }
    std::cout << std::endl;
}

在这个代码块中,嵌套循环中的代码用于确定特定行中的字符数量。它从 c = 'A' 开始,并不断增加,直到达到该行的最后一个字符。

编译并运行程序

编写完程序后,使用以下命令编译它:

g++ main.cpp -o main && ./main

如果你的程序没有错误,输出应该如下所示:

Enter the number of rows in the pyramid: 6
F F F F F F
E E E E E
D D D D
C C C
B B
A

验证输出

为了验证输出,请将程序生成的输出与预期输出进行比较,以确认其是否正确。在这种情况下,预期输出如下:

Enter the number of rows in the pyramid: 6

所需的包含 6 行的反向金字塔模式为:

第 1 行包含从 A 到 F 的字符:F F F F F F
第 2 行包含从 A 到 E 的字符:E E E E E
第 3 行包含从 A 到 D 的字符:D D D D
第 4 行包含从 A 到 C 的字符:C C C
第 5 行包含从 A 到 B 的字符:B B
第 6 行包含从 A 到 A 的字符:A

总结

在本实验中,我们学习了如何使用 C++ 打印一个由字符组成的反向半金字塔结构。我们学习了如何使用嵌套循环来实现这种模式,并理解了如何导航嵌套结构。通过练习这些模式,你将更加熟悉编程中的嵌套循环。

您可能感兴趣的其他 C++ 教程