輸入輸出

#include<iostream>
using namespace std;

//字符串的輸入
int main()
{
    char ch, s[80];
    while((ch=cin.get()) != '\n') cout<<ch;  // I am a student
    cout<<endl;
    do{cin.get(ch); cout<<ch;} while(ch!='\n'); // You are a worker
    cin.get(s,80);
    cout<<s<<endl;   // We are learning the C++ language
    return 0;
}


//整型數組的輸入
//給定數組長度
int main()
{
       int n = 0;
       cin >> n;
       vector<int> p(n);
       for(int i = 0; i < n; i++){
              cin >> p[i];
       }
       return 0;
}

//數組長度不定
//方法1:這種方法使用getchar和cin共同進行處理。假設輸入爲-1,1,-1,1。首先,cin>>會根據i的類型讀一個int,他遇到space會終止,所以第一次獲得-1,接着每次getchar都會獲得一個空格,這時候繼續讀就會讀到第二個元素1,一直while到終止條件,讀到一個換行符「\n」.
{   
       vector<int> a;
       int i = 0;
       do{
              cin >> i;
              a.push_back(i);
       }while(getchar() !='\n');
       return 0;
}

//方法2:使用getline(cin, str)讀到一行字符串,而後將getline獲得的stringstream input中,而後input>>輸出會被space截斷,直接>>到一個int類型這種就能夠自動實現類型轉換,也很方便。固然也能夠用atoi。
#include<sstream> //注意加這個頭
int main()
{
       string str,temp;
       getline(cin, str);
       int i = 0;
       vector<int> p;
       stringstream input(str);
       while(input >> i){
              p.push_back(i);
       }      
       return 0;
}
相關文章
相關標籤/搜索