首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

c++有关问题

2012-05-24 
c++问题求救Input:第一行为组数T ( 1T10000 ) , 后面输入T组测试数据.每组为一个3*3的整数矩阵,每个矩

c++问题求救
Input:
第一行为组数T ( 1<=T<=10000 ) , 后面输入T组测试数据.每组为一个3*3的整数矩阵,每个矩阵前空一行. 
Output:
对于每一组3*3的矩阵,如果他满足上述九宫格的定义,则输出”Cheers!” 否则,输出”OmyGa!”. 
我的代码
#include<iostream>
#include<string>
#include<vector>
using namespace std;
void main()

  int a[3][3];
int n;
  cin>>n;
 for(int i=0;i<n;i++)
 {  
 
int x=0;
cout<<'\n';
  for(int j=1;j<=3;j++)
  for(int k=1;k<=3;k++)

  cin>>a[j][k];
  for(int l=1;l<=3;l++)
  { 
  if(a[l][1]+a[l][2]+a[l][3]==15)
x++;
  if(a[1][l]+a[2][l]+a[3][l]==15)
x++;
  }
  if(a[1][1]+a[2][2]+a[3][3]==15)
x++;
  if(a[1][3]+a[2][2]+a[3][1]==15)
x++;
  if(x==8)
  cout<<"Cheers!"<<endl;
  else
  cout<<"OMyGa!"<<endl;
 }
}
为什么每次要结束时都报错........而且acm提交是wrong answer

[解决办法]
数组定义成matrix[3][3] 那么matrix[0][0]就是第一行的第一个元素 懂否 
matrix[2][2]是第三行最后一个元素 你的下表已经越界了

热点排行