2 int main(int argc, const char *argv[])
3 {
4 int a[20][20]={0};
5 int m,n;
6 printf("输入行数列数\n");
7 scanf("%d%d",&m,&n);
8 for(int i=0;i<m;i++){
9 for(int j=0;j<m-i;j++){
10 printf(" "); }
11 for(int j=0;j<=i;j++){
12 if(j>n-1)
13 break;
14 if(i==j||j==0)
15 a[i][j]=1;
16 else
17 a[i][j]=a[i-1][j]+a[i-1][j-1];
18 printf("%4d",a[i][j]);
19 }
20 printf("\n");
21 }
22 return 0;
23 }

该程序定义了一个20x20的二维数组,用户输入行数和列数,然后填充特定规则的数值。对于每个元素,如果它位于对角线上或者在第一列,值为1;否则,值由其上方和左上方的元素之和决定。程序逐行打印出矩阵的内容。
5026

被折叠的 条评论
为什么被折叠?



