帮忙改一下这个C++

来源:百度知道 编辑:UC知道 时间:2024/06/13 21:32:22
杨辉三角:(在我的基础上改)
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
#include<iostream.h>
void main()
{
int a[5][9],i=0,j=0;
for(;i<5;i++)
{
for(;j<9;j++)
{
if(i+j==4||j-i==4)
a[i][j]=1;
if(i+j<4||j-i>4)
a[i][j]=0;
if(i+j>4||j-i<4) a[i][j]=a[i-1][j-1]+a[i-1][j+1];
}
}
for(i=0;i<5;i++)
{
for(j=0;j<9;j++)
{
if(a[i][j]==0) cout<<" ";
else cout<<a[i][j];
}
cout<<endl;
}
}

还有问题hi我

#include<iostream.h>
void main()
{
int a[5][9]={0},i=0,j=0;//数组初始化

for(;i<5;i++)
{
for(j=0;j<9;j++)//内循环除了第一次,之后的j没赋值,相当于j=9,总是不循环的
//就是说内循环只循环了一次
{
if(i+j==4||j-i==4)
a[i][j]=1;
else if(i+j<4||j-i>4)//条件判断,逻辑问题
a[i][j]=0;
else if(i+j>4||j-i<4) a[i][j]=a[i-1][j-1]+a[i-1][j+1];
}
}
for(i=0;i<5;i++)
{
for(j=0;j<9;j++)
{
if(a[i][j]==0) cout<<" ";
else cout<<a[i][j];
}
cout<<endl;
}
}

#include <iostream.h>

void main()
{
int a[5][9],i=0,j=0;
for(;i<5;i++)
{
for(j=0;j<9;j++)//1
{
if(i+j==4||j-i==4)
{
a[i][j]=1;
continue;//2
}
if(i+j<4||j-i>4)
{
a[i][j]=0;
continue;//3
}
i