求救!!!!!
查看原帖
求救!!!!!
1278584
VirtualImage楼主2024/3/22 20:21
#include<cstdio>
int x,y;
int a[25][25];
int main(){
	int n;
	scanf("%d",&n);
	int p1=n/2+1;
	a[1][p1]=1;
	x=1;y=p1;
	int c=1,cnt=1;
	for(;cnt<=n*n;cnt++){
		if(x==1){
			if(y==n){
				if(a[n][1]!=0){
					a[n][1]=++c;
					x=n;y=1;
				}else{
					if(x==n){
						a[1][y]=++c;
						x=1;
					}
				}
			}else{
				if(a[n][y+1]!=0){
					a[n][y+1]=++c;
					x=n;y++;
				}else{
					if(x==n){
						a[1][y]=++c;
						x=1;
					}
				}
			}
		}else{
			if(y==n){
				if(a[x+1][1]!=0){
					a[x+1][1]=++c;
					x++;y=1;
				}else{
					if(x==n){
						a[1][y]=++c;
						x=1;
					}
				}
			}else{
				if(y==n){
					if(a[x+1][y+1]!=0){
						a[x+1][y+1]=++c;
						x++;y++;
					}else{
						if(x==n){
							a[1][y]=++c;
							x=1;
						}
					}
				}
			}
		}
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			if(!(j==1)) printf(" ");
			printf("%d",a[i][j]);
		}
		puts("");
	}
	return 0;
}

蒟蒻一名,大佬求调

2024/3/22 20:21
加载中...