zoukankan      html  css  js  c++  java
  • C语言实现输出杨辉三角

    1.倒推法实现输出杨辉三角右半部分,代码如下:

     1 #include<stdio.h>
     2 int main()
     3 {
     4     int n,i,j,a[100];
     5     printf("请输入行数n:");
     6     scanf("%d",&n);
     7     printf("  1");
     8     printf("\n");
     9     a[1]=a[2]=1;
    10     printf("%3d%3d\n",a[1],a[2]);
    11     for(i=3;i<=n;i++)
    12     {
    13         a[1]=a[i]=1;
    14         for(j=i-1;j>1;j--)
    15             a[j]=a[j]+a[j-1];
    16         for(j=1;j<=i;j++)
    17             printf("%3d",a[j]);
    18         printf("\n");
    19     }
    20     return 0;
    21 }

    运行结果:

    2.实现输出杨辉三角金字塔形式,代码如下:

     1 #include<stdio.h>
     2 int main()
     3 {
     4     int a[10][21];
     5     int i,j;
     6     for(i=0;i<10;i++)
     7         for(j=0;j<21;j++)
     8             a[i][j]=0;
     9             a[0][10]=1;
    10     for(i=1;i<10;i++)
    11         for(j=10-i;j<10+i+1;j++)
    12             a[i][j]=a[i-1][j-1]+a[i-1][j+1];
    13         for(i=0;i<10;i++)
    14         {
    15             for(j=0;j<21;j++)
    16                 if(a[i][j]==0)
    17                     printf("   ");
    18                 else{
    19                     if(a[i][j]<10)
    20                     {
    21                         printf("%2d",a[i][j]);
    22                     }
    23                     else if(a[i][j]<100)
    24                     {
    25                         printf("%2d",a[i][j]);
    26                     }
    27                     else{
    28                         printf("%d",a[i][j]);
    29                     }
    30                 }
    31                 printf("\n");
    32         }
    33                 printf("\n");
    34     return 0;
    35 }

    运行结果:

  • 相关阅读:
    HDU 1058
    Codeforces 349C
    HDU 2602
    HDU 2571
    HDU 2955
    HDU 2084
    HDU 1003
    HDU 1506 & 1505
    POJ 1854
    HDU 2095
  • 原文地址:https://www.cnblogs.com/javaexplorer/p/9965264.html
Copyright © 2011-2022 走看看