C语言实验——删除指定字符
时间: 1ms 内存:64M
描述:
从键盘输入一个字符串给str和一个字符给c,删除str中的所有字符c并输出删除后的字符串str。
输入:
第一行是一个字符串;
第二行是一个字符。
输出:
删除指定字符后的字符串。
示例输入:
sdf$$$sdf$$
$
示例输出:
sdfsdf
提示:
参考答案(内存最优[752]):
#include<stdio.h>
int main()
{
extern void enter_string(char str[]);
extern void delete_string(char str[],char ch);
extern void print_string(char str[]);
char c;
char str[80];
enter_string(str);
scanf("%c",&c);
delete_string(str,c);
print_string(str);
}
#include<stdio.h>
void enter_string(char str[80])
{
gets(str);
}
#include<stdio.h>
void delete_string(char str[],char ch)
{
int i,j;
for(i=j=0;str[i]!='\0';i++)
if(str[i]!=ch)
str[j++]=str[i];
str[j]='\0';
}
#include<stdio.h>
void print_string(char str[])
{
printf("%s\n",str);
return 0;
}
参考答案(时间最优[0]):
#include<stdio.h>
int main()
{
char str1[20], str2[20], c;
int i = 0, j = 0;
gets(str1);
scanf("%c", &c);
while(str1[i] != 0)
{
if(str1[i] != c)
{
str2[j] = str1[i];
j++;
}
i++;
}
str2[j] = 0;
puts(str2);
return 0;
}
题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。