题目
边长为 n 的数字方阵,其中的数字符合某种规律。n = 3 时,方阵如下:
1 4 9
2 3 8
5 6 7
给出 n ,输出对应的数字方阵。
输入
输入一个数n(0<n<=20)
输出
输出边长为 n 的数字方阵。
数据范围
0<n<=20
输入样例
4
输出样例
1 4 9 16
2 3 8 15
5 6 7 14
10 11 12 13
代码
#include<stdio.h>
int main()
{
int n,i,j,k=1;
scanf("%d",&n);
int a[n][n];
for(i=0;i<n;i++)
{
for(j=0;j<=i;j++)
a[i][j]=k++;
for(j=i-1;j>=0;j--)
a[j][i]=k++;
}
for(i=0;i<n;i++)
for(j=0;j<n;j++)
{
printf("%d",a[i][j]);
if(j<n-1)
printf(" ");
else
printf("\n");
}
}