/* 第 17 题: 题目:在一个字符串中找到第一个只出现一次的字符。 如输入 abaccdeff,则输出 b。 利用计数来着? */ #include<iostream> #include<stdio.h> using namespace std; char find(char *str) { char *p=str; int sum[256]; memset(sum,0,sizeof(sum)); while(*p!='\0') { sum[*p]++; p++; } p=str; while(*p!='\0') { if(sum[*p]==1) return *p; p++; } return '\0'; } int main() { char str1[10]="abaccdeff"; printf("第一个只出现一次的字符为:%c\n",find(str1)); char str2[10]="123434251"; printf("第一个只出现一次的字符为:%c\n",find(str2)); return 0; }