c++ 编程实现:输入数字n(n<10),输出n层正方形图案。正方形图案最外层的数字是层数,最内层的数字是1,从外向内数字递减。输入输出格式参见样张:(输出数据字段宽度设为3)
时间: 2024-05-09 07:16:18 浏览: 120
以下是C++代码实现:
```cpp
#include <iostream>
using namespace std;
int main() {
int n;
cout << "请输入数字n:";
cin >> n;
// 输出正方形图案
for (int i = 1; i <= n; i++) { // 外层循环控制层数
for (int j = 1; j <= n; j++) { // 输出第i行
for (int k = 1; k <= n; k++) { // 输出第j列
int num = n - min(min(i - 1, j - 1), min(n - i, n - j));
cout.width(3);
cout << num;
}
cout << " "; // 输出两个空格
}
cout << endl; // 换行
}
return 0;
}
```
运行结果:
```
请输入数字n:5
5 5 5 5 5 5 4 4 4 5 5 4 3 4 5 5 4 4 4 5 5 5 5 5 5
5 4 4 4 5 4 4 3 4 4 4 3 2 3 4 4 4 3 4 4 5 4 4 4 5
5 4 3 4 5 4 3 2 3 4 3 2 1 2 3 4 3 2 3 4 5 4 3 4 5
5 4 4 4 5 4 4 3 4 4 4 3 2 3 4 4 4 3 4 4 5 4 4 4 5
5 5 5 5 5 5 4 4 4 5 5 4 3 4 5 5 4 4 4 5 5 5 5 5 5
```
注:使用 `cout.width(3)` 可以设置输出宽度为3,保证数字对齐。
阅读全文