C++ 实现放大箭头图案 - GESP 二级
C++ 实现放大箭头图案 - GESP 二级
题目描述
请打印 n 行的放大的箭头(n 一定是一个奇数)。
示例:
假设输入 n 为 5,则输出如下(用 '□' 代表空格,实际输出时请输出空格):
*****
'□'*****
'□' '□'*****
'□'*****
*****
输入描述
一个整数 n,代表图形的行数(n 一定是一个奇数)。
输出描述
n 行的图形。
用例输入 1
5
用例输出 1
*****
'□'*****
'□' '□'*****
'□'*****
*****
代码实现
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
for(int i=0; i<n; i++) {
for(int j=0; j<i; j++) {
cout << ' '; // 打印空格
}
for(int j=0; j<n; j++) {
cout << '*';
}
cout << endl;
}
for(int i=0; i<n; i++) {
for(int j=0; j<n-1; j++) {
cout << ' '; // 打印空格
}
cout << '*' << endl;
}
for(int i=0; i<n-1; i++) {
for(int j=0; j<n-1-i; j++) {
cout << ' '; // 打印空格
}
for(int j=0; j<n; j++) {
cout << '*';
}
cout << endl;
}
return 0;
}
代码分析
代码通过三个嵌套循环实现图案的打印。
- 第一个循环打印箭头顶部部分。
- 第二个循环打印箭头中间部分。
- 第三个循环打印箭头底部部分。
注意:
- 本题中,代码使用
cout << ' ';打印空格,而不是cout << ' ';,因为后者会打印两个空格,导致图案格式错误。
总结
本题是一道简单的 C++ 编程练习题,涉及到嵌套循环和字符串输出的基本操作。通过本题,您可以更好地理解嵌套循环的使用,并提高 C++ 语言的编程能力。
原文地址: https://www.cveoy.top/t/topic/qjeU 著作权归作者所有。请勿转载和采集!