时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:7202
解决:3308
-
题目描述:
-
输入字符串s和字符c,要求去掉s中所有的c字符,并输出结果。
-
输入:
-
测试数据有多组,每组输入字符串s和字符c。
-
输出:
-
对于每组输入,输出去除c字符后的结果。
-
样例输入:
-
heallo a
-
样例输出:
-
hello
【分析】这题可以用strtok函数。
strtok函数
#include <cstring>
函数原型:char * strtok (char *str, const char * delimiters);
分割规则:当strtok()在参数s的字符串中发现参数delimiters中包涵的分割字符时,则会将该字符改为\0 字符。所以只要存在与delimiters中的字符在之后的输出中一定不会存在。有删除某个字符的作用。但是参数delimiters必须是字符串,就算有一个字符也得双引号,否则报错(如:"a")。
#include <iostream>
#include <stdio.h>
#include <cstring>
using namespace std;
int main()
{
char a[2];
char buf[1000];
while(scanf("%s%s",buf,a)!=EOF)
{
char *token = strtok(buf,a);
while(token!=NULL)
{
cout<<token;
token = strtok(NULL,a);
}
cout<<endl;
}
return 0;
}