fjxmlhx不喜欢网上的 marshtomps 。所以他决定把所有的 “marshtomp”(名字不区分大小写) 改为 “fjxmlhx;
Input输入包含多行,每行字符串不超过200的长度,一个单词不会一半出现在上一行,剩下的在下一行。直到文件结束(EOF)
输出 替换之后的字符串。
Sample InputThe Marshtomp has seen it all before. marshTomp is beaten by fjxmlhx! AmarshtompBSample Output
The fjxmlhx has seen it all before. fjxmlhx is beaten by fjxmlhx! AfjxmlhxB
#include<iostream> #include<string.h> using namespace std; char s[10005]; char st[100]="marshtomp"; char st1[100]="fjxmlhx$$"; char c[100]; int main() { int i,j,pos,p,q; while(gets(s)) { int n=strlen(s); for(i=0;i<n;i++) { if(s[i]=='m'||s[i]=='M') { memset(c,0,sizeof(c)); pos=i; q=0; for(j=pos;j<=pos+8;j++) { if(s[j]>='A'&&s[j]<='Z') { c[q]=s[j]+32; q++; } else { c[q]=s[j]; q++; } } p=0; if(strncmp(c,st,9)==0) { for(i=pos;i<=pos+8;i++) { s[i]=st1[p]; p++; } } } } for(i=0;i<n;i++) { if(s[i]!='$') cout<<s[i]; } cout<<endl; } return 0; }