蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形

/蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。/

#include <stdio.h>
#include <string.h>
#define MAX 100
void fun(int n)
{
    int matrix[MAX][MAX];   //创建矩阵
    int num=1;
    for(int i=0;i<n;i++)
    {
        int x=0,y=i;
        while(y>=0)
        {
            matrix[x][y]=num++;
            x++;
            y--;
        }
    }
    for (int row = 1; row < n; row++) {
        int x = row, y = n - 1;
        while (x < n) {
            matrix[x][y] = num++;
            x++;
            y--;
        }
    }
    // 打印矩阵
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < n - i; j++) {
            if (j > 0) {
                printf(" "); // 在数字之间打印空格
            }
            printf("%d", matrix[i][j]); // 打印数字
        }
        printf("\n"); // 换行
    }
}
int main(void)
{
    int n;
    printf("please enter matrix size\n");
    scanf("%d",&n);
    fun(n);
    return 0;
}

posted on 2024-07-21 23:43  wessf  阅读(6)  评论(0编辑  收藏  举报