异形矩阵 C

202 阅读1分钟

题目

边长为 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");
	}
}