1 条题解

  • 0
    @ 2024-9-13 21:40:47
    #include <stdio.h>
    #include <math.h>
    #define MAX_SIZE 25
    int main()
    {
        int a[MAX_SIZE][MAX_SIZE], n, cnum, x, y, k = 1, i, j;
        scanf("%d", &n);
        cnum = ceil((double)n/2);
        for(i = 1; i <= cnum; i++) 
        {
            for(x = i, y = n-i+1; x <= n-i+1; x++)
                a[x][y] = k++;
            for(x = n-i+1, y = n-i; y >= i; y--)
                a[x][y] = k++;
            for(x = n-i, y = i; x >= i; x--)
                a[x][y] = k++;
            for(x = i, y = i+1; y <= n-i; y++)
                a[x][y] = k++;
        }
        for(i = 1; i <= n; i++)
        {
            for(j = 1; j <= n; j++)
                printf("%d ", a[i][j]);
            printf("\n");
        }
        return 0;
    }
    
    • 1

    信息

    ID
    365
    时间
    1000ms
    内存
    64MiB
    难度
    10
    标签
    递交数
    4
    已通过
    3
    上传者