
c语言 实现统计字符串中字符出现的种类 个数,例如a出现了三次,b出现了五次…
展开全部
一般有效字符不会超过127个,所以定义一个128位的数组,其下标可对应每个字符的ascii码,根据字符串,对数组每个元素进行累加,可得各字符出现的频率。
追问
有没有简洁一点的方法…难道要写128个case嘛
追答
#include <stdio.h>
int main()
{
int a[128]={0};
int i;
char str[256];
printf("input str: ");
gets(str);
for( i=0;str[i]!='\0';i++ )
{
if ( str[i] < 127 )
a[str[i]]++;
else
a[127]++;
}
for( i=0;i<128;i++ )
if ( a[i] > 0 )
printf("%d: %d\n", i, a[i] );
return 0;
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用字符数组或者字符指针都可以呀,字符用for循环或者指针遍历,进行统计,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
要是Java就方便了,有个substring方法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询