【C语言】在字符串中找出第一个只出现一次的字符。如输入“abaccdeff”,则输出’b’
2015-07-06 16:45
531 查看
//在字符串中找出第一个只出现一次的字符。如输入“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; }
相关文章推荐
- c++ 消息传递(通过SendMessage)
- C语言中字符数组和字符串指针分析
- C++异常处理基本思想
- C++异常处理基本思想
- 二叉树的建立与遍历(一)(c++实现)
- JAVA和C++区别
- C语言中返回局部变量或临时变量的地址的错误
- VS2010中“工具>选项中的VC++目录编辑功能已被否决”解决方法
- VTK_Day_2_Light
- C++异常机制的实现方式和开销分析
- c++面试锦集
- C++中的Cast的用法总结
- c++ 读、写、保存、删除文件
- VC++6.0注释快捷键设置
- C语言几种经典排序代码
- 学习笔记八:试图利用C++ Primer 13.5节内容分析shared_ptr指针(共享智能指针)
- C++静态成员小结
- C++学习笔记3——类的封装(1)
- C++编程规范 头文件格式 和 函数注释格式
- 【c语言】二维数组中的查找,杨氏矩阵在一个二维数组中,每行都按照从左到右的递增的顺序排序,输入这样的一个数组和一个数,判断数组中是否包含这个数