作业九

 1 #include <stdio.h>
 2 void main()
 3 {
 4     int i, j, k,t=0;                            /*定义二维数组a[i][j]*/
 5     int a[12][12];                           /*控制打印的行数*/
 6     while(t<=0||t>=11){
 7         printf("输入打印行数:");
 8         scanf("%d",&t);
 9 }
10     printf("%d行杨辉三角如下:\n",t);
11     for(i=1;i<=t;i++)
12         a[i][1] = a[i][i] = 1;              /*两边的数令为1,循环从1开始,a[i][1]为第一个数*/
13     for(i=3;i<=t;i++)
14         for(j=2;j<=i-1;j++)
15         a[i][j]=a[i-1][j-1]+a[i-1][j];    /*除两边的数外其余都等于上两顶数之和*/
16     for(i=1;i<=t;i++){
17        for(k=1;k<=t-i;k++)
18               printf("   "); 
19            for(j=1;j<=i;j++) 
20              printf("%6d",a[i][j]);       /*换行*/
21  
22               printf("\n"); 
23 }
24                printf("\n");
25 }

心得:我觉得做这道题首先得搞清楚什么是杨辉三角,因为老师提前在上课时给我们讲过,作业完成的也还可以。

 

posted on 2019-06-11 23:31  马丽花  阅读(169)  评论(1编辑  收藏  举报