C++程序 打印右半金字塔图案
这里我们将使用以下两种方法构建C++程序打印右半金字塔图案:
- 使用 for循环
- 使用 while循环
输入:
rows = 5
输出:
*
* *
* * *
* * * *
* * * * *
1. 使用 for循环
首先使用 for循环 来确定行数,第二个 for循环 则确定列数。 这里的值将根据第一个 for循环 而更改。
//使用for循环打印右半金字塔图案的C++程序
#include <iostream>
using namespace std;
int main()
{
int rows = 5;
//首先使用循环确定行数
for (int i = 1; i <= rows; i++) {
//第二个循环是用于确定列数,这里的值将根据第一个循环而更改
for (int j = 1; j <= i; j++) {
//打印所需的图案
cout << "* ";
}
cout << "\n";
}
return 0;
}
输出
*
* *
* * *
* * * *
* * * * *
时间复杂度: O(n 2 )
这里的n是行数。
空间复杂度: O(1)
因为只使用了恒定的额外空间。
2. 使用while循环
while循环会检查条件,直到条件为false。如果条件为真,那么进入循环并执行语句。
//使用while循环打印右半金字塔图案的C++程序
#include <iostream>
using namespace std;
int main()
{
int i = 0, j = 0;
int rows = 5;
// while循环检查条件,直到条件为false如果条件为真则进入循环
while (i < rows) {
//该循环将打印图案
while (j <= i) {
cout << "* ";
j++;
}
j = 0;
i++;
cout << "\n";
}
return 0;
}
输出
*
* *
* * *
* * * *
* * * * *
时间复杂度: O(n 2 ),其中n是行数
空间复杂度: O(1)