题解 | 回型矩阵

回型矩阵

https://www.nowcoder.com/practice/36d5dfddc22c4f5b88a5b2a9de7db343

#include <stdio.h>
int main() 
{
    int N,n,i=0,j=0,num=1;//n为圈数
    scanf("%d",&N);
    int arr[20][20];
    if(N%2!=0)
    {
        arr[N/2][N/2]=N*N;
    }
    for(n=0;n<N/2;n++)
    {
        for(j=n;j<N-n-1;j++)//向右
        {
            arr[n][j]=num++;
        }
        for(i=n;i<N-n-1;i++)//向下
        {
            arr[i][N-n-1]=num++;
        }
        for(j=N-n-1;j>=n+1;j--)//向左
        {
            arr[N-n-1][j]=num++;
        }
        for(i=N-n-1;i>=n+1;i--)
        {
            arr[i][n]=num++;
        }
    }
    for(i=0;i<N;i++)
    {
        for(j=0;j<N;j++)
        {
            printf("%d ",arr[i][j]);
        }
        printf("\n");
    }
    return 0;
}

全部评论

相关推荐

故事和酒66:央企,事少钱少稳定福利好,离家近可以考虑
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务