#include <stdio.h> int main() { int n; scanf("%d", &n); int a[10][10]; int i, j, c; a[0][0] = 1; for (i = 0; i < n; i++) { c = i + 2; for (j = 0; j < n; j++) { printf("%d ", a[i][j]); a[i][j + 1] = a[i][j] + c; c = c + 1; if (i + j == 4) { printf("\n"); a[i + 1][0] = a[i][0] + i + 1; break; } } } }
#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; }
#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;
uq_52514251541 2022-02-10 11:31:38 |
受到启发,用一下递归
改了楼上的 #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"); } } }
致知于行 2022-03-02 21:16:47 |
这样写多好,大写的赞
致知于行 2022-03-02 22:13:59 |
但是,想问下,题目要求是多组数据输入输出,如果加上while,但不能运行呢
致知于行 2022-03-02 22:14:14 |
#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 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; }