字母频率统计 c语言,C语言统计字母使用频率

wah0m2q2e.jpeg

一、题目:统计字母的使用频率 二、功能描述:本程序的功能,就是要统计英文字母的使用频率。为统 计英文字母的使用频率c语言用什么定义字母,输入一个不包括空格的由英文字母 组成的字符串,长度不超过 200 个字符。统计 26 个英文字 母的使用频率,不区分大小写。最后按照使用频率从小到大 输出字母(小写字母)和使用频率(出现的次数) 。三、解决方案:第一步:将字符串中的大写字母转换为小写字母 第二步:统计输入的字符串中字母的使用频率。 第三步:按使用频率从大到小输出。四、主要函数描述:1)大小写转换:使用 strlwr(字符串)实现大写到小写换。 2)频率统计:使用一个一位数组和一个 for 循环实现字母出 现频率的统计。 3)排序及同步输出字母:利用冒泡排序法实现频率的排序 以及对应字母的输出,这是需要重新定义一个字符串数组。五、主要技术问题:1)为统计字母的使用频率,定义一个长度为 26 的 int 数组存放所统计的各个字母的使用频率。 2)在统计字母的使用频率时,不要使用 if 语句或 switch 语 句,利用字母的 ASCII 码与数组元素下标之间的关系求得。 3)在使用频率从大到小进行排序时,没有用指针数组法c语言用什么定义字母, 只是用了冒泡排序法。

t0102bf0ed46d4a6ca1.jpg.jpg

六、结论(实验心得) :学会了巧用 ASCII 码实现频率统计,冒泡排序。同步排序。七、程序及结果:#include int main() { char c[200]; gets(c); strlwr(c); int n[26]={0}; char h[26]={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t',' u','v','w','x','y','z'}; int i,m,j,t,l; for(i=0;c[i]!='\0';i++){ m=c[i]-'a'; n[m]+=1; } for(m=0;m<26;m++) for(j=0;j<25-m;j++) if(n[j+1]>n[j]) {t=n[j+1]; n[j+1]=n[j]; n[j]=t; l=h[j+1]; h[j+1]=h[j]; h[j]=l; } for(m=0;m<26;m++) printf("%c %d\n",h[m],n[m]); return 0; }

本文来自电脑杂谈,转载请注明本文网址:

http://www.pc-fly.com/a/jisuanjixue/article-250229-1.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值