#P7126. 带上石鬼面
带上石鬼面
Background
带上这个石鬼面,你将拥有high到不行的能力。。。
Description
输入一个字符串,以回车结束(字符串长度不超过 100) 该字符串由若干个单词组成,单词之间用一个空格隔开,所有单词区分大小写。 现需要将其中的某个单词替换成另一个单词,并输出替换之后的字符串。
Input
输入共 3 行。 第 1 行是包含多个单词的字符串 s; 第 2 行是待替换的单词 a(长度不超过 100); 第 3 行是 a 将被替换的单词 b(长度不超过 100)。
Output
共一行,输出将 s 中所有单词 a 替换成 b 之后的字符串。
Samples
ko no dio da
dio
diyaboluo
ko no diyaboluo da
提示
对于这样输入一串以空格分割的字符串可以试试以下的处理
C语言:
#include<stdio.h>
#include<string.h>
using namespace std;
char str[105][105];
int main()
{
int cou=0;
while(scanf("%s",str[cou++])){//输入字符串以空格分隔,scanf读入到空格和回车都会终止当前输入
char c=getchar();//读入字符,每次输入完都会以空格或者回车结束当前输入
if(c=='\n')break;//如果是空格就继续如果是回车就结束循环
}
for(int i=0;i<cou;i++){//遍历输出字符串
printf("%s\n",str[i]);
}
}
C++:
#include<iostream>
#include<sstream>
#include<string.h>
using namespace std;
int main()
{
string str;//声明一个字符串变量
getline(cin,str); //getline函数将输入的一行数据用字符串str接收
stringstream line(str);//将以空格分隔的多个字符串放入stringstream
while(line>>str)//遍历输出
{
cout<<str<<" ";
}
}
Limitation
1s, 1024KiB for each test case.
Related
In following contests: