题目描述
按要求输入如下格式的杨辉三角
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
最多输出10层
输入描述
输入只包含一个正整数n,表示将要输出的杨辉三角的层数。
输出描述
对应于该输入,请输出相应层数的杨辉三角,每一层的整数之间用一个空格隔开
输入样例
5
输出样例
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
#include<stdio.h>
int main()
{
int a[10][10],n,i,j;
scanf("%d",&n);
for (i=0; i<10; i++) {
for (j=0; j<10; j++) {
if (j==0 || i==j) {
a[i][j]=1;
}
}
}
for (i=2; i<10; i++) {
for (j=1; j<i; j++) {
a[i][j]=a[i-1][j-1]+a[i-1][j];
}
}
for (i=0; i<n; i++) {
for (j=0; j<=i; j++) {
if (i==j) {
printf("%d",a[i][j]);
}else printf("%d ",a[i][j]);
}printf("\n");
}
}
对于这类较复杂的数组问题,主要是利用循环嵌套来解决。