1. 程式人生 > >C++二維不定長陣列的輸入

C++二維不定長陣列的輸入

c++程式設計題目中的二維不定長陣列vector的輸入

#include<iostream>
#include<vector>
#include<algorithm>
#include<string>
using namespace std;

int main()
{
    int N,m;
    cin>>N>>m;
    vector<vector<int>>res;
    vector<int>path;
    ///
    getchar();///不加的話getline不起作用
string ss; getline(cin,ss); cout<<ss; path.clear(); while(N--) { int x1; while(cin>>x1) { path.push_back(x1);//push_back放在判斷語句的上面 if(cin.get()=='\n') { break; } } res.push_back(path); path.clear(); } cout
<<"迭代器遍歷"<<endl; vector<vector<int>>::iterator it1; vector<int>::iterator it2; vector<int>pp; for(it1=res.begin();it1!=res.end();it1++) { pp=*it1; for(it2=pp.begin();it2!=pp.end();it2++) { cout<<*it2<<" "
; } cout<<endl; } //單獨取出二維陣列的一行 cout<<"單獨取出一行"<<endl; vector<int>p1(res[1].begin(),res[1].end()); for(int i=0;i<p1.size();i++) { cout<<p1[i]<<" "; } cout<<endl; cout<<"下標遍歷方法"<<endl; for(int i=0;i<res.size();i++) { for(int j=0;j<res[i].size();j++) { cout<<res[i][j]<<" "; } cout<<endl; } cout<<"end"; }

執行結果