杨辉三角形

题目标题:
杨辉三角形(谌海军)
 
题目描述:
输出n行杨辉三角形,如下:
1
1 1
1 2 1
1 3 3 1
…………
 
输入描述:
输入为一个正整数n
 
输出描述:
输出为n行杨辉三角形;
 
样式输入:
3
 
样式输出:
1
1 1
1 2 1

【经典】

#include<stdio.h>
void main()
{
    int n,a[100][100],i,j;
    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        for(j=0;j<=i;j++)
        {
            a[i][0]=1;
            if(i==j)
                a[i][j]=1;
            else
            {
                if(i>1&&j>0)
                    a[i][j]=a[i-1][j-1]+a[i-1][j];
            }
            printf("%d ",a[i][j]);
        }
        printf("
");
    }
}

【我的解法】

#include<stdio.h>
void main()
{
    int n,i,j,a[10][10];
    scanf("%d",&n);
    for(i=0;i<n;i++)
    {a[i][0]=1;a[i][i]=1;}
    for(i=0;i<n;i++)
    { 
        for(j=0;j<n;j++)
        {
            if(a[i][j]!=1)a[i][j]=a[i-1][j]+a[i-1][j-1];
        }
    }
    for(i=0;i<n;i++)
    { 
        for(j=0;j<n;j++)
        {
            if(j<i)
            printf("%d ",a[i][j]);
            else if(j==i)
            printf("%d",a[i][j]);
            else printf("");
        }
        if(i<(n-1))printf("
");
    }
}
原文地址:https://www.cnblogs.com/achst/p/3647121.html