您的位置:首页 > Web前端

剑指Offer:从第一个字符串中删除第二个字符串中出现过的所有字符

2014-07-24 01:18 363 查看
// 从第一个字符串中删除第二个字符串中出现过的所有字符

#include <stdio.h>

char* remove_second_from_first( char *first, char *second )
{
if( first == NULL || second == NULL )
{
printf("first or/and second should not be NULL\n");
return NULL;
}

char flag[256]={0};
char *p, *q;

p = second;
while( *p != '\0' )
flag[*p++] = 1;

p = q = first;
while( *q != '\0' )
{
if( flag[*q] == 1 )
{
q++;
continue;
}
*p++ = *q++;
}
*p = '\0';

return first;
}

int main(void)
{
char s1[101], s2[101];
scanf("%s",s1);
scanf("%s",s2);
char *result = remove_second_from_first(s1,s2);
printf("%s\n",result);

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐