题目104:字符串的查找删除
时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:1439
解决:476
-
题目描述:
-
给定一个短字符串(不含空格),再给定若干字符串,在这些字符串中删除所含有的短字符串。
-
输入:
-
输入只有1组数据。
输入一个短字符串(不含空格),再输入若干字符串直到文件结束为止。
-
输出:
-
删除输入的短字符串(不区分大小写)并去掉空格,输出。
-
样例输入:
-
in #include int main() { printf(" Hi "); }
-
样例输出:
-
#clude tma() { prtf("Hi"); }
-
提示:
-
注:将字符串中的In、IN、iN、in删除。
#include<cstdio> #include<cstdlib> #include<cmath> #include<cstring> #include<string> #include<algorithm> #include<iostream> #include<sstream> using namespace std; int main() { //freopen("in.txt","r",stdin); char a[1000];char aimc[100];string aim; string b; string c;int i,j,k,temp; gets(aimc);aim=aimc;string kong=" "; while(gets(a)) { b=a;c=a; for(i=0;i<b.size();i++) b[i]=tolower(b[i]); // printf("%s\n",b.c_str()); int i=b.find(aim,0); while(i!=string::npos) { b.erase(i,aim.size()); c.erase(i,aim.size()); i=b.find(aim,0); } i=b.find(kong,0); while(i!=string::npos) { b.erase(i,1); c.erase(i,1); i=b.find(kong,0); } printf("%s\n",c.c_str()); } return 0; }