解
2024-01-28 20:15:05
发布于:浙江
7阅读
0回复
0点赞
#include<iostream>
using namespace std;
int n[40][40];
int main(){
	int x,y,m;
    cin>> m;
    for(int i=1;i<=m*m;i++){
        if(i==1){
            x=m/2+1;
            y=1;
        }
        
        else if(y==1&&x!=m){
            y=m;
            x++;
        }
        else if(x==m&&y!=1){
            y-=1;
            x=1;
        }
        else if(x==m&&y==1){
            y++;
        }
        else if(x!=m&&y!=1&&n[y-1][x+1]==0){
            x++;
            y--;
        }
        else
            y++;
 
        n[y][x]=i;
    }
    
    for(int i=1;i<=m;i++){
        for(int j=1;j<=m;j++)
            cout << n[i][j] << " ";
        cout << endl;
    }
}
这里空空如也


有帮助,赞一个