题目描述
输出一个回形方阵,具体可见样例
输入
一个整数n $(0<n<10)$
输出
一个方阵,每个数字的定宽为2
提示
实现定宽为2:
C语言用
printf("%2d",x);
C++用
cout<<setw(2)<<x;
题解
#include <iostream>
using namespace std;
int a[100][100];
int n, sized;
void input() {
cin >> n;
}
void cal() {
sized = 2 * n + 1;
for (int j = 0; j < sized; j++) {
for (int i = 0; i < sized; i++) {
a[i][j] = max(abs(i - n), abs(j - n));
}
}
}
void show() {
for (int i = 0; i < sized; i++) {
for (int j = 0; j < sized; j++) {
cout << " " << a[i][j];
}
cout << endl;
}
}
int main() {
input();
cal();
show();
return 0;
}