• 回答数

    4

  • 浏览数

    160

燃情咖啡
首页 > 英语培训 > 统计英文字母

4个回答 默认排序
  • 默认排序
  • 按时间排序

天天~甜甜

已采纳

statistics 统计也可以写count(统计)

统计英文字母

95 评论(8)

周闹闹now

statistics

129 评论(11)

美多多lady

这个简单啊~~啦啦啦~~~等下~~给你写

312 评论(15)

Jonathan261

首先你定义的x是个数组吧,它存放26个整型,即当好存放26个字母所对应的是下标。数组的话里面的下标就一定要是整型,即int型。而你定义的数组s是字符型的,咱先别管x[s[i]-'a']++这个里面的,咱就先看你首先不是不要保证x数组里面的为整数,C语言定义两个字符相加或相减得到的就是整数,即你里面的(s[i]-'a')两个都是字符,就能保证x【】里面的数为整型,因为是数组么,所以要保证里面是int型,规定。然后再看x数组里面的,也就是s[i]-'a',这句你先看它上面的if语句,s[i] >= 'a'&&s[i]<= 'z'它是判断当前这个字符是不是小写字母,如果是的话,就让这个字符与字符‘a’相减,而这个结果得到的就是按照字母abcd....顺序在x数组中所存放的下标。举个例子,当前字符为‘a’,为小写字母,然后它与‘a’相减,结果为0,那它是不是当好存放在你定义的x数组的第一个位置,因为数组下标从0开始的嘛,找到存放在第一个位置,然后++,表示找个a字母一个所以加1. 后面的大写A是一样的道理,这个程序并没有分开存放大小写,只要是A或者a就存放在x数组的第一个举个例子,当前字符'D',根据前面的if语句判定它是一个大写字母,然后就让它与'A'相减,得到的是整型3,那么就是x[3],然后++表示找到找到字符D所以加1,x[3]表示x数组的第四个元素,因为下标是从0开始的嘛,刚好D在字母表中也是第四个元素,所以其实就是一一对应,将字母表中的顺序对应到x数组中

224 评论(9)

相关问答