还记得中学时候学过的杨辉三角吗?具体的定义这里不再描述,你可以参考以下的图形:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
Input
输入数据包含多个测试实例,每个测试实例的输入只包含一个正整数n(1<=n<=30),表示将要输出的杨辉三角的层数。
Output
对应于每一个输入,请输出相应层数的杨辉三角,每一层的整数之间用一个空格隔开,每一个杨辉三角后面加一个空行。
Sample Input
2 3
Sample Output
1 1 1 1 1 1 1 2 1#include<iostream> using namespace std; int main() { int n; while(cin>>n) { int a[100][100]={0,1},b,c,d,e,t,x=0; for(b=0;b<=n;b++) { for(c=1;c<=b;c++) { if(b>0) { a[b][c]=a[b-1][c-1]+a[b-1][c]; //给三角赋值 } } } for(d=0;d<=n;d++) { if(d>1) //我也不知道为什么需要大于一 改对的 cout<<endl; t=0; for(e=1;e<=d;e++) { if(t==1) cout<<" "; cout<<a[d][e]; //输出三角 t=1; } } cout<<endl; //两个换行 这个也是改对的 cout<<endl; } return 0; }
该博客介绍了如何使用C++编程实现输出杨辉三角的算法。通过读取输入的层数n,计算并打印出相应的杨辉三角形,每个整数间用空格隔开,每层结束后换行。示例中给出了输入2和3时的输出结果。
2259

被折叠的 条评论
为什么被折叠?



