编写一个程序统计输入字符串中: 各个数字、空白字符、以及其他所有字符出现的次数
2016-06-17 18:36
841 查看
#include <stdio.h> int main() { char a=0; int num_count=0; int space_count=0; int other_count=0; //注意此处,不能写成a=getchar(),然后while(a!='\n'),这样做只能输入一行,然后进行死循环 while((a=getchar())!='\n') { if(a>='0'&&a<='9') { num_count++; } else if(a==' ') { space_count++; } else { other_count++; } } printf("num_count=%d\n",num_count); printf("space_count=%d\n",space_count); printf("other_count=%d\n",other_count); return 0; } 另一方法----调用函数: #include <stdio.h> #include <ctype.h> //对空白字符的判断,调用了isspace()函数,所以要调用头文件 int main() { char str[20]; //这块对输入有所限制了 int num_count=0; int space_count=0; int other_count=0; char *p=str; gets(str); //接收字符串 while(*p) { if(*p>='0'&&*p<='9') { num_count++; } else if(isspace(*p)) //用isspace函数来判断是不是空白字符 { space_count++; } else { other_count++; } p++; } printf("num_count=%d\n",num_count); printf("space_count=%d\n",space_count); printf("other_count=%d\n",other_count); return 0; }
本文出自 “追寻内心的声音” 博客,转载请与作者联系!
相关文章推荐
- 实现一个函数int my_atoi(char s[]),可以将一个字符串转换为对应的整数
- 一组数据中只有一个数字出现了一次。其他所有数字都是成对出现的。请找出这个数字。(使用位运算)
- 不使用(a+b)/2这种方式,求两个数的平均值(保证不会溢出)
- 两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?(异或的用法)
- 猴子吃桃
- 小球落下,反弹问题
- 有一个分数序列 2/1+3/2+5/3+8/5+13/8+…求出这个数列前 20 项的和。
- 3个人说了真话,1个人说的是假话。写一个程序来确定到底谁是凶手
- 编写一个程序,它从标准输入读取C源代码,并验证所有的花括号都正确的成对出现
- 求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和,其中a是一个数字,例如:2+22+222+2222+22222
- 五次作业后的感悟
- 我的nginx+php是如何配置的?
- 如何通过HTML标记或JS代码实现跳转返回页面顶部
- jsp页面存放位置
- 在php中的数组总添加一个元素
- 十道腾讯软件开发工程师面试题
- 安利一个加密算法
- 周五课件---文件的重定向
- 下拉列表多选的时候如何获取值
- HTML学习笔记之二(回到顶部 与 回到底部)