对于初学者,看到此类字符串统计的题,首先会想到if选择语句
做好范围条件如:(‘a’<=str[i])&&(str[i]<=‘z’)
这样做是为了把输入的字符串做一个分类。但之后的统计字符串中每个字母出现的特定的数目束手无策。(比如我一开始决定if选择判定26个字母挨个统计且后面还要再编写出现个数为0的情况,太过复杂)
此时需要特定的算法。
借鉴了其他程序员的代码,注意到以后的字母表示可以通过相应的表达式。

代码展示:

#include<stdio.h>
#include<string.h>
#define N 100//宏定义便于定义字符数组的宽度
int main()
{int cnt[26]={0},len,i,j;char str[N];//宏定义printf("请输入一个字符串!\n");gets(str);len=strlen(str);//strlen剔除'\0'for(i=0;i<len;i++){for(j=0;j<26;j++)//26个字母{if(str[i]=='a'+j)//此处就是一个表达式,'z'与'a'相差26,在'a'上特定加上数字即可表示相应字母{cnt[j]++;//这样解决了特定字母出现个数特定数组下标统计。break;//内循环一个判定完之后暂停。等待外循环的下一个字符。}}}
printf("统计结果为:\n");for(i=0;i<26;i++){if(cnt[i]!=0){printf("%c:%d\n",i+'a',cnt[i]);//此处的i+'a'较str[i]更好,若是str[i]还得一一判定是否为字母,且i是记录了输入字符串中有哪些字母,在'a'之上相加个数即可表示。}}return 0;
}

代码分析详见代码中。

C语言:从键盘输入一个字符串str,统计str中小写字母a到z共26个字母的个数(个数为0的不显示,其它字符不统计)。相关推荐

  1. python从键盘输入一个字符串、将小写字母全部_从键盘输入一个字符串_将其中的小写字母全部转换成大写字母...

    从键盘输入一个字符串, 将其中的小写字母全部转换成大写字母, 然后输出到一个磁盘文件 "test" 中保存.输入的字符串以 " ! " 结束 . 我写的程序是 ...

  2. 131-从键盘输入一个字符串,将其中的小写字母全部换成大写字母,然后输出到一个磁盘文件

    //131-从键盘输入一个字符串,将其中的小写字母全部换成大写字母,然后输出到一个磁盘文件"test"中保存.输入的字符串以!结束//这道题对我来说最重要的就是ch=getchar ...

  3. python从键盘输入一个字符串、将小写字母全部_从键盘输入一个字符串,将其中的小写字母全部转换成大写字母...

    从键盘输入一个字符串, 将其中的小写字母全部转换成大写字母, 然后输出到一个磁盘文件 "test" 中保存.输入的字符串以 " ! " 结束 . 我写的程序是 ...

  4. C语言编程>第二十一周 ⑥ 请补充main函数,该函数的功能是:从键盘输入一个字符串,即一个指定,然后把这个字符及其后面的所有字符全部删除,结果仍然保存在原串中。

    例题:请补充main函数,该函数的功能是:从键盘输入一个字符串,即一个指定,然后把这个字符及其后面的所有字符全部删除,结果仍然保存在原串中. 例如:输入"1234567",指定字符 ...

  5. 编程从键盘输入一个字符串,统计该字符串中从‘a‘到‘z‘共26个小写字母各自出现的次数, 将结果存入数组中,并输出

    /*编程从键盘输入一个字符串,统计该字符串中从'a'到'z'共26个小写字母各自出现的次数, 将结果存入数组中,并输出*/ #include<stdio.h> #include<st ...

  6. 请使用指针的方法编写程序,程序的功能是从键盘输入一个字符串(字符串长度小于100),删除其中的字母a后输出。例如,输入字符串abcaca,输出bcc。

    请使用指针的方法编写程序,程序的功能是从键盘输入一个字符串(字符串长度小于100),删除其中的字母a后输出.例如,输入字符串abcaca,输出bcc. 输入样例: abcaca 输出样例: bcc 代 ...

  7. Java 从键盘输入一个字符串,统计某个字符的个数

    从键盘输入一个字符串,统计某个字符的个数 例如,从键盘输入"I am a student",统计a出现的次数 字符串转字符数组 字符串.toCharArray(); Scanner ...

  8. java统计输入出现次数并打印_Java键盘输入一个字符串,并且统计其中各种字符出现的次数...

    package demo02; import java.util.Scanner; /* 题目: 键盘输入一个字符串,并且统计其中各种字符出现的次数 种类有"大写字母.小写字母.数字.其他 ...

  9. python输入一个三位数、输出它的逆序数值_c语言 从键盘输入一个三位数,输出该数的逆序数。c语言中从键盘输入一个三位整数...

    c语言 从键盘输入一个三位数,输出该数的逆序数. c语言中从键盘输入一个三位整数 www.zhiqu.org     时间: 2020-12-08 c语言中从键盘输入一个三位数,输出该数的逆序数,可以 ...

最新文章

  1. 【Qt】Qt5.9连接MySQl5.7(亲自测试成功)
  2. 如何在 C# 中使用隐式和显式操作符
  3. 我的Serverless实战——引领云计算的下一个十年
  4. spss相关性分析看结果_spss相关性分析
  5. pyinstaller--将py文件转化成exe
  6. javascript 库_您应该在2020年尝试的10个很棒JavaScript库
  7. C语言提前结束for循环,[新人求指教]51C语言编程可否用中断令循环结束提早结束...
  8. C# 学生简单管理系统 数据库 1.0版本
  9. GTP时间管理的实践心得
  10. 怎样检查c语言程序的问题,C语言陷阱与技巧第24节,做代码选择,不一定都要使用 if 判断的...
  11. 随机排列与八卦太极的联系
  12. 助力奈雪,发掘茶饮品牌元宇宙新玩法
  13. 接私活 静态网页制作
  14. 3_22_doublewei1
  15. 好用的wordpress企业主题,Benevolent
  16. Atmel AT91SAM9G20 EMAC控制DM9161调试笔记
  17. 计算机应用讲课大赛,xx杯说课大赛计算机应用基础类一等奖作品: PPT写字动画的制作现场说课课件...
  18. core开发linux桌面应用,【.NET Core 跨平台 GUI 开发】第一篇:编写你的第一个 Gtk# 应用...
  19. 中国交通银行发行首个基于区块链的个人住房抵押贷款证券(RMBS)
  20. 18年考转专本难吗数学英语计算机,2021年江苏专转本各科目难度有多大?

热门文章

  1. 面试了一个34岁的程序员,只因这一个细节,被我一眼看穿是培训班出来的,没啥工作经验...
  2. 计算机在线初级考题免费,计算机基础练习试题.docx
  3. 介绍双方认识时应该遵循什么样的礼仪要求
  4. LFSR(斐波那契大战伽罗瓦)
  5. 【机器学习】梯度下降算法原理和实现
  6. Go语言学习之cgo(golang与C语言相互调用)
  7. 黑猩猩优化算法python代码(详细注释)
  8. swift5 接入内购全流程
  9. 10.Makefile ifeq、ifneq、ifdef和ifndef
  10. 记录下PictureSelector图片库上的坑