程序填空题:输出杨辉三角形的前n行
请补全代码,输入如下图所示的杨辉三角形前n行,n由用户从键盘输入(n<=20),请不要填写多余的空格。
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
#include <stdio.h>
#define N 20
void CalculateYH(int a[][N],int n);
void PrintYH(int a[][N],int n);
int main()
{
int a[N][N]={0},n;
scanf("%d",&n);
CalculateYH(a,n);
PrintYH(a,n);
return 0;
}
//计算杨辉三角形前n行元素的值
void CalculateYH(int a[][N],int n)
{
int i,j;
for(i=0;i<n;i++)
{
=1;
=1;
}
for(i=2;i<n;i++)
{
for(j=1;j<=i-1;j++)
{
a[i][j]=;
}
}
}
//输入杨辉三角形前n行元素的值
void PrintYH(int a[][N],int n)
{
int i,j;
for(i=0;i<n;i++)
{
for(j=0;;j++)
{
printf("%4d",a[i][j]);
}
printf("\n");
}
}
answer:
第1空:a[i][0]
第2空:a[i][i]
第3空:a[i-1][j-1]+a[i-1][j]
第4空:j<=i
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
#include <stdio.h>
#define N 20
void CalculateYH(int a[][N],int n);
void PrintYH(int a[][N],int n);
int main()
{
int a[N][N]={0},n;
scanf("%d",&n);
CalculateYH(a,n);
PrintYH(a,n);
return 0;
}
//计算杨辉三角形前n行元素的值
void CalculateYH(int a[][N],int n)
{
int i,j;
for(i=0;i<n;i++)
{
=1;
=1;
}
for(i=2;i<n;i++)
{
for(j=1;j<=i-1;j++)
{
a[i][j]=;
}
}
}
//输入杨辉三角形前n行元素的值
void PrintYH(int a[][N],int n)
{
int i,j;
for(i=0;i<n;i++)
{
for(j=0;;j++)
{
printf("%4d",a[i][j]);
}
printf("\n");
}
}
answer:
第1空:a[i][0]
第2空:a[i][i]
第3空:a[i-1][j-1]+a[i-1][j]
第4空:j<=i