杨辉三角形

题目标题:
杨辉三角形(谌海军)
 
题目描述:
输出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("\n");
    }
}

 

 

【我的解法】

#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("\0");
        }
        if(i<(n-1))printf("\n");
    }
}

 

posted @ 2014-04-05 12:37  achst  阅读(349)  评论(0编辑  收藏  举报