计算字符串中每个字母出现的次数

zqhyeah 2006-07-27 09:56:47
请用C语言编写一个程序。首先,接收用户通过键盘输入的一串字符串,该字符串应该全部是由26个英文字母组成。然后,通过对该字符串进行比较、统计处理,统计出该字符串中每个字母出现的次数。最后,仅将该字符串中出现过的字母以及该字母在字符串中所出现的次数输出到屏幕上。具体要求如下:
1、 在主程序中,实现对字符串的输入、比较统计和输出功能。其中要求:通过调用函数checkstring()来完成对所输入字符串中字母的逐一比较,统计获取每个字母在字符串中出现的次数,并保存在相应的数组变量中。
2、 在接收字符串时,通过屏幕输出提示信息:“请输入一串英文字母(最多50个字符):”,接收键盘输入的一串字符。
要求:
1)、对于所接收的字符串,应该验证其长度是否超出了你所预先定义的字符串变量的长度(请见下面提示)。如果超出变量的长度,应该给出提示信息:“输入的英文字母数超长了!“。
2)、在显示了提示信息后,运行结束。
3、 对于比较、统计函数checkstring() 要求,对所输入字符串中的每个字符进行比较、统计,获得26个英文字母在此字符串中出现的次数。
要求:
1)、此题涉及到了字符串的操作,需要引用<string.h>头文件
2)、字符串在C语言中应该定义为字符数组。
3)、为了获得输入字符串的长度,需要函数strlen().
int len;
len=strlen(str);
4)、为了对大小写的英文字母进行相同的处理,可以调用C函数库提供的toupper()函数和tolower()函数将输入字符串中的英文字母统一转换成大写或者小写字母,然后再对所输入的字符串中的所有英文字母进行逐个的比较、统计。
为了调用C语言函数库中的toupper()函数或tolower()函数,需要引用<stdlib.h>头文件。
示例:将字符串str 中的英文字母统一转换为小写字母的代码如下:
char str1[51];
int I;
for(I=0;I<len;I++)
str1[I]=tolower(str[I]);
4、 输出时,要求只输出所接收到的字符串中涉及到的所有字母,以及在该字符串中该字母所出现的次数
5、 在实现功能的同时,要求注意编程的规范:程序逻辑分明,关键代码有注释,书写有缩进,判断输入有错误时,应输出提示信息。
6、 请按照以下输入的数据运行,运行结果应该为:
...全文
3574 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zqhyeah 2006-07-28
  • 打赏
  • 举报
回复
刚学C++不久,很多东西都不是很明白.帮帮忙吧,各位大虾~
踏岸寻柳 2006-07-28
  • 打赏
  • 举报
回复
估计是作业

不过lz也太不厚到了,竟然连一分半分都不肯放
zyf_1977 2006-07-28
  • 打赏
  • 举报
回复
呵呵,看看C++ Primer
唐巧 2006-07-28
  • 打赏
  • 举报
回复
老师的作业吧。。。呵呵。
afgkidy 2006-07-27
  • 打赏
  • 举报
回复
这简单的 不用吧?

64,649

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧