輸入2個字串s1和s2,要求刪除字串s1中出現的所有子串s2,即結果字串中不能包含s2。
輸入格式:
輸入在2行中分別給出不超過80個字元長度的、以回車結束的2個非空字串,對應s1和s2。
輸出格式:
在一行中輸出刪除字串s1中出現的所有子串s2後的結果字串。
輸入樣例:
tomcat is a male ccatat
cat
輸出樣例:
tom is a male
程式**1:
#include
#include
#include
using
namespace
std;
char* f1(char a,char b);
void del(char a,char b);
int main()
char* f1(char a,char b)
}return0;}
void del(char a,char b)
程式**2:
#include
#include
#include
using
namespace
std;
char* f1(char a,char b);
void del(char a,char b);
int main()
char* f1(char a,char b)
}return0;}
void del(char a,char b)
注意:上面兩段**有5處不同。
**1用gets()函式來輸入字串,**2用fget()函式來輸入字串。gets()函式在換行時結束輸入,不會把』\n』納入字串內容,fget()函式也是在換行時結束輸入,但是會把』\n』作為字串內容的一部分。
例如有以下輸入:
hello world(換行)
執行gets(a)和fgets(a,80,stdin)得到的結果是:
兩者的區別就在此。正是因為這個區別,所以導致了兩段**後面四處的不同。
兩段**執行結果稍微有點區別:
**1結果:
**2結果:
可見**2的執行結果比**1多了乙個空行,原因就是fgets(a)的時候a的末尾有乙個』\n』。
刪除字串中的子串
請編寫乙個函式,刪除乙個字串的一部分。函式原型如下 int del substr char str,char const substr 函式首先應判斷substr是否出現在str中。如果它並未出現,函式就返回0 如果出現,函式應該把str中位於該子串後面的所有字元複製到該子串的位置,從而刪除這個子串...
刪除字串中的子串
輸入2個字串s1和s2,要求刪除字串s1 現的所有子串s2,即結果字串中不能包含s2。輸入格式 輸入在2行中分別給出不超過80個字元長度的 以回車結束的2個非空字串,對應s1和s2。輸出格式 在一行中輸出刪除字串s1 現的所有子串s2後的結果字串。輸入樣例 tomcat is a male ccat...
刪除字串中的子串
輸入2個字串s1和s2,要求刪除字串s1 現的所有子串s2,即結果字串中不能包含s2。輸入格式 輸入在2行中分別給出不超過80個字元長度的 以回車結束的2個非空字串,對應s1和s2。輸出格式 在一行中輸出刪除字串s1 現的所有子串s2後的結果字串。輸入樣例 tomcat is a male ccat...