原题链接:蛇行矩阵
0.0分
18 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
#include <stdio.h> int main(void) { int n; scanf_s("%d", &n); int i , j ,nt = n; int dia = 0,tail = 0,head=1; for (i = 1; i <= n; i++) { for (j = 1 ;j <= nt; j++) { if (j != 1) { printf("%d", tail + i + j - 1); tail = tail + i + j - 1; } else { printf("%d", head + i-1); tail = head + i-1; } if (dia < nt) { printf(" "); } if (j == 1) { head = tail; } } nt--; printf("\n"); } return 0; }@wzx #include <stdio.h> int main() { int i, j, t = 0, n; int a[100][100], k = 1; while ( scanf("%d", &n) != EOF) { for (i = 0; i < n; i++) { for (j = 0; j <= i; j++, k++) a[i - j][j] = k; } for (i = 0; i <= n; i++, t++) { for (j = 0; j < n - t; j++) { printf("%d ", a[i][j]); if (i + j == n - 1) printf(" "); } } } }#include<stdio.h> int fun1(int i) { if (1 == i) return 1; else if (i > 1) return fun1(i - 1) + i - 1; } int fun(int i, int j) { if (1 == j) { return(fun1(i)); } else if (j > 1) { return fun(i,j - 1) + i + j - 1; } } int main(void) { int i, j, n; scanf("%d", &n); for (i = 1; i <= n; i++) { for (j = 1; j <= n - i + 1; j++) { printf("%d""%c", fun(i, j),32); } printf("\n"); } return 0;改了楼上的 #include <stdio.h> int main() { int i,j,k,n,t; t=0; int a[100][100]; scanf("%d",&n); for(i=0,k=1;i<n;i++) { for(j=0;j<=i;j++,k++) a[i-j][j]=k; } for(i=0;i<n;i++,t++) { for(j=0;j<n-t;j++) { printf("%d ",a[i][j]); if(i+j==n-1) printf("\n"); } } }#include<stdio.h> int main() { int n,j,i,k=1,t=0; int a[100][100]; scanf("%d",&n); for(j=1;j<=n;j++) { for(i=0;i<j;i++) { a[j-1-i][i]=k; k++; } } for(i=0;i<n;i++,t++) { for(j=0;j<n-t;j++) { printf("%d ",a[i][j]); if(i+j==n-1) printf("\n"); } } return 0; }