日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

PAT乙类1009 说反话 (20 分)

發布時間:2024/7/5 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PAT乙类1009 说反话 (20 分) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、 題目

給定一句英語,要求你編寫程序,將句中所有單詞的順序顛倒輸出。輸入格式: 測試輸入包含一個測試用例,在一行內給出總長度不超過 80 的字符串。字符串由若干單詞和若干空格組成,其中單詞是由英文字母(大小寫有區分)組成的字符串,單詞之間用 1 個空格分開,輸入保證句子末尾沒有多余的空格。輸出格式: 每個測試用例的輸出占一行,輸出倒序后的句子。輸入樣例: Hello World Here I Come 輸出樣例: Come I Here World Hello

二、代碼

  • 核心函數
  • 未使用的getline(cin, str2); 此函數直接讀入輸入的一行到str2字符數組中,包含換行符、空格!!注意使用的是char數組,不是string(也就是說ACM中直接讀入一行未知何時結束的數據的時候,這種方法可以奏效;讀入一行后自動運行下面的代碼)
  • getchar: 讀入一個字符,包含換行符,空格。
  • 上面的兩個關鍵方法就是來解決 輸入不知道何時終結的字符的方法!!!!!
    • 分析
      1) 我原來想法: 我原來打算使用string數組來做,結果發現無法判斷何時結束輸入,’\n’只是字符,string壓根不識別!!
      2) 本題采用了定義數組來記錄空格的方法求解。 空格與空格之間的間隙就是每個單詞。
      3)因為要滿足每個單詞前后都有空格,所以第一個單詞的前面和最后一個單詞的后面都要加一個空格,這樣所有單詞的處理就會一致。 for(i=strSign[k-1]+1; i<strSign[k]; i++) 。 從前一個空格下一個開始讀,到下一個空格的前一個結束。。

    • 易錯點
      1) 注意在第一個單詞前面和最后一個單詞的后面都要添加空格
      2)不要忘記,最后輸入沒有空格

    #include <iostream> #include <stdio.h> using namespace std;int main() {char str[200];char strSign[100] = {0};strSign[0] = -1;//string str2;int i=0, j=1, k;//getline(cin, str2); //geline讀入一行數據,而且讀入的是字符串string,不是char 不包含換行符!!!! char c;while(1) {c = getchar();if(c == '\n') {break;}if(c == ' ') {strSign[j] = i;j++;}str[i] = c;i++;//cout<<c;}str[i] = ' ';strSign[j] = i;for(k=j; k>=1; k--) {for(i=strSign[k-1]+1; i<strSign[k]; i++) {cout<<str[i];}if(k != 1) {cout<<" ";}}return 0; }

    后補第二種方法!!!

    • 核心函數
  • 用的char的二維數組!!! 二維數組的行數、列數只要大于就行!!!
  • 因為題目的例子是一段字符串!!在測試的時候,系統自己會自動中斷輸入!
    cin是以空格為分隔符的!!將幾個字符串分開
  • 在自己測試的時候,要用crtl + Z 中斷輸入!!!
    #include <iostream> using namespace std;int main() {char str[20][80];int i=0;while(cin>>str[i]) {i++;}for(int j=i-1; j>=0; j--) {if(j!=i-1) cout<<" ";cout<<str[j]; }return 0; }

    總結

    以上是生活随笔為你收集整理的PAT乙类1009 说反话 (20 分)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。