蛇形填数

#include<stdio.h>
int main()
{
	int k,i,j;int num=1,n;
	int a[100][100];
	scanf("%d",&n);
//	for(i=1;i<=n;i++)
	//	for(j=1;j<=n;j++)
	//	scanf("%d",&a[i][j]);
	for(k=2;k<=2*n;k++)
		for(i=1;i<=n;i++)
		for(j=1;j<=n;j++)
		if(i+j==k&&(k&1))
		a[i][j]=num++;//通过变换座标,可以变为之字形等
		else 
		if(i+j==k&&!(k&1))
		a[j][i]=num++;
	for(i=1;i<=n;i++)
	{
		for(j=1;j<=n;j++)
		printf("%d	",a[i][j]);
		printf("\n");
	}
	return 0;
		
}
原文地址:https://www.cnblogs.com/hxsyl/p/2544321.html