读题比解题难系列
二维数组操作
http://www.nowcoder.com/questionTerminal/2f8c17bec47e416897ce4b9aa560b7f4
#include<iostream> #include<vector> //脑瘫题目,此题并不是矩阵题,而是一道输入合法性的检测题 using namespace std; int main(){ vector<int> Output(5);//输出初始化0 int row,column;//行 列 int x1,y1,x2,y2;//交换坐标(x1,y1) (x2,y2) int left_x;//第x行左边还能插入行? 猜测x行上面插入行 int up_y;//第y列上面能插入列? 猜测y列左侧插入列 int x,y;//查询坐标(x,y) //检测行列输入合法性 while(cin>>row>>column){ if(row<=0||row>9||column<=0||column>9) Output[0]=-1; //和检测交换的两个坐标的合法性 cin>>x1>>y1>>x2>>y2; if(x1<0||x2<0||y1<0||y2<0||x1>=row||x2>=row||y1>=column||y2>=column) Output[1]=-1; //检测插入行的合法性 cin>>left_x; if(left_x<0||left_x>=row||left_x==9||row<0||row>=9) Output[2]=-1; //检测插入列的合法性 cin>>up_y; if(up_y<0||up_y>=column||column<=0||column>=9) Output[3]=-1; //检测查询坐标的合法性 cin>>x>>y; if(x<0||x>=row||y<0||y>=column) Output[4]=-1; for(int i=0;i<5;i++) cout<<Output[i]<<endl;//输出结果 for(int i=0;i<5;i++) Output[i]=0;//把输出数组重置为0 } return 0; }