#include<stdio.h>
void squeeze(char s[],char s1[]); //函数声明
int any(char s[],char s2[]);
int main()
{
char s1[] = "this is impossible!";
char s2[] ="tj"; //要删除的字符串or 要返回位置的字符串
printf("%d\n",any(s1,s2)); //any函数返回值
squeeze(s1,s2);
printf("%s\n",s1); //打印执行squeeze函数之后的s1字符串(看看是否删除S2中的字符);
}
void squeeze(char str[],char code[])
{
int i,j,h,k;
for(i = j = 0;str[i]!='\0';i++)
{
for(h = k =0;code[h]!='\0';h++)
{
if(str[i] == code[h])
{
k++;
}
}
if(k>0)
continue;
str[j++]=str[i];
}
}
int any(char str[],char code[])
{
int i,j,k;
k = 0;
for(i = 0;str[i]!='\0';i++)
{
for(j=0;code[j]!='\0';j++)
{
if(str[i]==code[j])
return j;
}
k++;
}
if(k==(i--)) //'\0'字符的存在所以需要i减一之后和k进行比较
return -1;
}
重新编写函数squeeze(s1,s2);编写函数any(s1,s2);
最新推荐文章于 2021-12-04 08:42:15 发布