演算法筆記 — 單詞替換
阿新 • • 發佈:2018-11-25
題目連結:http://www.codeup.cn/problem.php?cid=100000580&pid=3
題目描述
輸入一個字串,以回車結束(字串長度<=100)。該字串由若干個單片語成,單詞之間用一個空格隔開,所有單詞區分大小寫。現需要將其中的某個單詞替換成另一個單詞,並輸出替換之後的字串。
輸入
多組資料。每組資料輸入包括3行,
第1行是包含多個單詞的字串 s,
第2行是待替換的單詞a,(長度<=100)
第3行是a將被替換的單詞b。(長度<=100)
s, a, b 最前面和最後面都沒有空格。
輸出
每個測試資料輸出只有 1 行,
將s中所有單詞a替換成b之後的字串。
樣例輸入
I love Tian Qin I You
樣例輸出
You love Tian Qin
注意是單詞與單詞的替換!!!
#include<iostream> #include<string> #include<cstring> using namespace std; char a[111],b[111],c[111]; int main(){ while(gets(a)){ string s[111]={};//不能定義為全域性變數 int len=strlen(a); gets(b); gets(c); int cnt=1; for(int i=0;i<len;i++){ if(a[i]!=' '){ s[cnt]+=a[i]; }else{ cnt++; } } for(int i=1;i<cnt;i++){ if(s[i]==b){ cout<<c<<' '; }else{ cout<<s[i]<<' '; } } if(s[cnt]==b){ cout<<c<<endl; }else{ cout<<s[cnt]<<endl; } } return 0; }