关闭

【C语言】在字符串中找出第一个只出现一次的字符。如输入“abaccdeff”,则输出’b’

702人阅读 评论(0) 收藏 举报
//在字符串中找出第一个只出现一次的字符。如输入“abaccdeff”,则输出’b’
#include <stdio.h>
#include <memory.h>
char OneTime(char * str)
{
	int data[256];
	char *p = str;
	if (*p == '\0')
		return '\0';
	memset(data, 0, sizeof(data));
	while (*p )
	{
		data[*p++]++;              //把每种字符个数各自统计起来
	}
	while (*str)
	{
		if (data[*str] == 1)       //检测该字符是否只出现一次,是则返回
			return *str;
		str++;
	}
	return '\0';
}
int main()
{
	char *p = "abcdabcdefjef";   //j
	printf("单独出现的字符为:%c\n", OneTime(p));
	return 0;
}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:146527次
    • 积分:2686
    • 等级:
    • 排名:第13515名
    • 原创:127篇
    • 转载:0篇
    • 译文:0篇
    • 评论:5条