杨辉三角你考试会考吗?
晚上写了两个关于杨辉三角的程序,这两个程序输出的图形的形状不一样,贴在这里供大家看看吧!!之所以写这两个程序,是觉得现在是期末了嘛,有的同学马上要考试了呀,可能会考到这样的题。所以就写了下来!
这是第一个程序的图形:
这个是代码:
程序代码:# include <stdio.h>
int a[1000][1000] ;
int main()
{
int n ;
int i , j ;
while(scanf("%d" , &n) != EOF && n != 0)
{
for(i = 1 ; i <= n ; i++)
{
for(j = 1 ; j <= 2 * i - 1 ; j++)
{
if(j == 1 || j == 2 * i - 1)
{
a[i][j] = 1 ;
printf("1") ;
continue ;
}
if(j % 2)
{
a[i][j] = a[i-1][j- 2] + a[i-1][j] ;//这块是关键的地方
printf("%d" , a[i][j]) ;
}
else
printf(" ") ;
}
printf("\n") ;
}
printf("\n") ;
}
return 0 ;
}这个是第二个程序的图形:
这个是代码:
程序代码:# include <stdio.h>
int a[1000][1000] ;
int main()
{
int n ;
int i , j ;
while(scanf("%d" , &n) != EOF && n != 0)
{
for(i = 1 ; i <= n ; i++)
{
for(j = 1 ; j <= n - i ; j++)
printf(" ") ;
a[i][1] = a[i][2*i-1] = 1 ;
for(j = 1 ; j <= 2 * i - 1 ; j++)
{
if(j == 1 || j == 2 * i - 1)
{
printf("1") ;
continue ;
}
if(j % 2 == 0)
printf(" ") ;
else
{
a[i][j] = a[i-1][j-2] + a[i-1][j] ;
printf("%d" , a[i][j]) ;
}
}
printf("\n") ;
}
}
return 0 ;
}







