/蛇形矩阵是由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;
}
标签:matrix,int,自然数,矩阵,++,蛇形,printf,row
From: https://www.cnblogs.com/yesiming/p/18315166