c++ 调试时应用程序出错

来源:百度知道 编辑:UC知道 时间:2024/06/08 19:32:41
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
char a[5][9]={{'*','*','*','*','*'}};
for(int i=0;i<5;i++)
{
for(int j=0;j<9;j++)
{
a[i+1][j+1]=a[i][j];
cout<<a[i][j]<<setw(3);

}
cout<<endl;
}
return 0;
}

c++ 调试时应用程序出错,不知道因该怎么改。是哪里错了啊

//
//你可以想象当i=4 时,执行到
//"a[i+1][j+1]=a[i][j];"
//时会出现a[5]这样数组就越界了.
//
//你可以这样来改正:
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
char a[5][9]={{'*','*','*','*','*'}};
for(int i=0;i<5;i++)
{
for(int j=0;j<9;j++)
{
if(i<4&&j<8) //需要添加条件限制
{
a[i+1][j+1]=a[i][j];
}
cout<<a[i][j]<<setw(3);

}
cout<<endl;
}

return 0;
}

using namespace std;????

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
char a[5][9]={{'*','*','*','*','*'}};
for(int i=0;i<5;i++)---------------i<4
{
for(int j=0;j<9;j++)-------------j<8
{
a[i+1][j+1]=a[i][j];
cout<<a[i][j]&