c primer習題6 20錯誤顯示

2021-06-01 21:17:05 字數 507 閱讀 3119

6.20編寫程式從標準輸入中讀入一些列string物件,知道同一單詞連續出現兩次,或者所有單詞都已讀完,才結束讀取。請使用while迴圈,每次迴圈讀取乙個單詞。如果連續出現相同的兩個單詞,便以break語句結束,此時,請輸出這個重複的單詞;否則,輸出沒有任何單詞重複的資訊。

答案書給的答案(人民郵電出版社):

#include "iostream"

#include "string"

using namespace std;

int main()

if(curword== preword&& !curword.empty())

cout<<"the word'  "}但是感覺上總是少了點什麼,執行下發現,當輸入兩個單詞now no時,程式執行錯誤。

重新想了下,終於發現問題,是每次輸入的時候 else     preword=curword;錯誤,應該在後面加上一句curword="";

這樣感覺是對的。

不知道到底是我想錯了,還是編輯疏忽了。呵呵

c primer習題9 26答案錯誤

primer 習題9.26 假設有如下ia的定義,將ia複製到乙個vector容器和乙個list容器中,使用單個迭代器引數版本的erase函式將list容器中的奇數值元素刪除,然後將vector容器中的偶數值元素刪除。int ia 答案 include iostream include vector...

C primer習題筆記

1 解釋下面每個函式模板的定義並指出是否有非法的,改正所發現的錯誤。e typedef char ctype templatectype f5 ctype a 解答 e 合法,定義了乙個模板函式f5,該函式的返回型別與形參型別相同,均可繫結到任何型別 而不一定是char型別 2 何時必須使用type...

C Primer 課後習題 3 6

練習 3.43 編寫3個不同版本的程式,令其均能輸出ia的元素。版本1使用範圍 for 語句管理迭代過程 版本 2 和版本 3 都使用普通的 for 語句,其中版本 2 要求下標運算子,版本 3 要求用指標。此外,在所有 3 個版本中都要直接寫出資料型別,而不能使用型別別名 auto 關鍵字或 de...