要求:
从键盘读入一个字符串到数组str中,再读入待删除的字符数n 及从键盘读入的n个用空格分隔的字符存放在字符数组cr中。调用自定义函数delet(),删除str字符串中给定的字符。如果字符串中没有指定字符,则不处理。
其中 str、cr与n 都是用户传入的参数。 str中字符串的长度不超过127; cr数组元素不超过52,n为从cr数组中存放的字符个数。
输入样例:
abcdefgLLikl
4
a e L n
输出样例:
bcdfgikl
代码内容:
#include <stdio.h>
void delet(char str[],char cr[],int n);
int main()
{
int i,j,n,digi,sum=0,dt[10];
char str[128]; //存放待删除字符的字符串
char cr[52]; //存放欲删除的字符
gets(str);
scanf("%d",&n);
for(i=0;i<n;i++)
scanf(" %c",&cr[i]);
delet(str,cr,n);
printf("%s",str);
return 0;
}
函数块
#include<string.h>
void delet(char str[],char cr[],int n)
{int i,j,m,q;
m=strlen(str);
for(i=0;i<m;i++)
{for(j=0;j<n;j++)
{if(str[i]==cr[j])
{
for(q=i;q<m;q++)
str[q]=str[q+1];
i--;
}
}
}}