タイトル1159:単語置換
1753 ワード
タイトルの説明
1つの文字列を入力して、車に戻って終了します(文字列の長さ<=100).この文字列は複数の単語で構成され、単語間は1つのスペースで区切られ、すべての単語が大文字と小文字を区別します.ここで、ある単語を別の単語に置き換え、置換後の文字列を出力する必要があります.
入力
複数のデータのグループ.各グループのデータ入力は3行で、
1行目は複数の単語を含む文字列sであり、
2行目は置換される単語a、(長さ<=100)
3行目はaが置換される単語bである.(長さ<=100)
s,a,bの一番前と一番後ろにはスペースがありません.
しゅつりょく
各テストデータの出力は1行のみで、
sのすべての単語aをbの後の文字列に置き換えます.
サンプル入力
サンプル出力
ヒント[+]
***プロンプトが非表示になっているので、上[+]をクリックすると***が表示されます.
ソース
2007年北京大学コンピュータ研究生気試験の本題
1つの文字列を入力して、車に戻って終了します(文字列の長さ<=100).この文字列は複数の単語で構成され、単語間は1つのスペースで区切られ、すべての単語が大文字と小文字を区別します.ここで、ある単語を別の単語に置き換え、置換後の文字列を出力する必要があります.
入力
複数のデータのグループ.各グループのデータ入力は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
ヒント[+]
***プロンプトが非表示になっているので、上[+]をクリックすると***が表示されます.
ソース
2007年北京大学コンピュータ研究生気試験の本題
/*********************************
* :2013-4-5
* :SJF0115
* : 1159:
* :http://acmclub.com/problem.php?id=1159
* :AC
* : OJ
* :
**********************************/
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main ()
{
int i,j,index,len,len2;
char str[101],word[101],newword[101],temp[101];
//freopen("C:\\Users\\SJF\\Desktop\\acm.txt","r",stdin);
while(gets(str)){
index = 0;
len = strlen(str);
scanf("%s",word);
scanf("%s",newword);
for(i = 0;i <= len;i++){
if(str[i] == ' ' || i == len){
temp[index] = '\0';
if(strcmp(temp,word) == 0){
printf("%s",newword);
}
else{
printf("%s",temp);
}
if(str[i] == ' '){
printf(" ");
}
else{
printf("
");
}
index = 0;
memset(temp,0,sizeof(temp));
}
else{
temp[index++] = str[i];
}
}
getchar();
}
return 0;
}