杨辉三角形C++编程

来源:百度知道 编辑:UC知道 时间:2024/06/22 22:17:44
rt,编到如下这一行为止,1 9 36 84 126 126 84 36 9 1 .输出时候要居中对齐。thanks!!!

这也是我以前回答过的问题,代码如下,最大可以输出12行,因为再大屏幕无法正常显示:
#include<iostream>
#include<iomanip>
using namespace std;
int c(int x,int y) ;
void main()
{
int i,j,n;
cout<<"请输入杨辉三角的行数:";
cin>>n;
while(n>12)
{
cout<<"输入数据过大,请重新输入:";
cin>>n;
}
/*控制正确的值保证屏幕的显示正确,当大于12时屏幕无法
正确显示*/
for(i=0;i<n;i++)

{
/*控制输出N行*/
for(j=0;j<3*(n-1-i);j++)
cout<<" ";/*控制第I行前的空格*/
for(j=1;j<i+2;j++)
cout<<setw(6)<<c(i,j); /*输入第I行第J个值*/
cout<<endl;
}
}
int c(int x,int y)
{
/*求杨辉三角形中X行Y列的值*/
int z;
if((y==1)||(y==x+1))
return(1); /*若为第X行第一和第X+1列则输出1*/
z=c(x-1,y-1)+c(x-1,y); /*否则其值为前一行的第Y-1列与Y的值的和*/
return(z);
}
有问题再联系我。

#include <iostream>
using namespace std;
void main()
{

int i,j