【问题描述】
输入两个字符串,从第一个字符串中删除第二个字符串中所有的字符,例如输入 they are students和aeiou,则删除后的字符串为thy r stdnts
【样例输入】
they are students
aeiou
【样例输出】
thy r stdnts
C++方法一:
#include <iostream>
#include <cstring>
char * string_del_characters( char * const src, const char * const dest )
{
int destLen = strlen( dest );
int hash_table[256] = { 0 };
char * p = src;
int index = 0;
for( int i = 0; i < destLen; i++ )
{
hash_table[ (int)dest[i] ] = 1;
}
while( *p != '\0' )
{
if( 0 == hash_table[(int)*p] )
{
src[index++] = *p;
}
p++;
}
src[index] = '\0';
return src;
}
int main( int argc, char ** argv )
{
char src[] = "They are students.";
char dest[] = "aeiou";
char * pResult = string_del_characters( src, dest );
std::cout << pResult << std::endl;
}
版权声明:本文为gupuyi2012原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。