C 练习实例32

C 语言经典100例 C 语言经典100例

题目:删除一个字符串中的指定字母,如:字符串 "aca",删除其中的 a 字母。

程序分析:无。

实例

// Created by www.icodebang.com on 15/11/9.
// Copyright © 2015年 本站教程. All rights reserved.
//
 
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
 
// 删除字符串中指定字母函数
char* deleteCharacters(char * str, char * charSet)
{
 int hash [256];
 if(NULL == charSet)
 return str;
 for(int i = 0; i < 256; i++)
 hash[i] = 0;
 for(int i = 0; i < strlen(charSet); i++)
 hash[charSet[i]] = 1;
 int currentIndex = 0;
 for(int i = 0; i < strlen(str); i++)
 {
 if(!hash[str[i]])
 str[currentIndex++] = str[i];
 }
 str[currentIndex] = '\0';
 return str;
}
 
int main()
{
 char s[2] = "a"; // 要删除的字母
 char s2[5] = "aca"; // 目标字符串
 printf("%s\n", deleteCharacters(s2, s));
 return 0;
}

以上实例输出结果为:

c

C 语言经典100例 C 语言经典100例

0 个评论

要回复文章请先登录注册