![]() |
#2
yuccn2012-05-11 22:53
|
打印出杨辉三角的题,输出10行:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
但是,最后做出来却是图里面那样。。。想来想去都没找到怎么解决



#include <iostream>
using namespace std;
int main()
{
int i,j,a[10],b[10]; //从第二行开始算起的奇数行为数组a,偶数行为数组b
a[0]=1;b[0]=1;
cout<<'1'<<endl; //输出第一个1
for (i=1;i<=9;i++)
{ cout<<'1'; //每行开头的1
for (j=1;j<=i;j++)
{ if(i%2==0) //从第二行开始算起的偶数行,每行第二个数字为b[1]
{
b[j]=a[j-1]+a[j]; //每一个数字 是上一行正对着的数字和前一个数字 之和
cout<<" "<<b[j];
}
if(i%2!=0) //从第二行开始算起的奇数行,每行第二个数字为a[1]
{
a[j]=b[j-1]+b[j]; //每一个数字 是上一行正对着的数字和前一个数字 之和
cout<<" "<<a[j];
}
}
cout<<endl; //行末
}
return 0;
}
只有本站会员才能查看附件,请 登录