统计字符串中各字符的个数 C

编程,输入一个字符串,分别输出字符串中所包含的各个不同的字符及其各自字符的数量。如:输入字符串:abcedabcdcd则输出:a=2b=2c=3d=3e=1。... 编程,输入一个字符串,分别输出字符串中所包含的各个不同的字符及其各自字符的数量。如:输入字符串: abcedabcdcd

则输出: a=2 b=2 c=3 d=3 e=1 。
展开
 我来答
L_o_o_n_i_e
2010-05-28 · TA获得超过4.2万个赞
知道大有可为答主
回答量:8507
采纳率:38%
帮助的人:5198万
展开全部
#include<stdio.h>
#include<stdlib.h>

void main()
{
char s[200];
int m[200][2];
int i,j,k,n,l;
printf("please enter a string\n");
scanf("%s",s); // 有空白字符串行用 gets 输入,无空白字符串用scanf
l = strlen(s);
n=1;
m[n][0]=s[0];
m[n][1]=1;
for (i=1;i<=l;i++){
for (j=1;j<=n;j++)
{
if (s[i]== (m[j][0] & 0xff) ) {m[j][1]++; goto Lab;};
};
n++;
m[n][0]=s[i];
m[n][1]=1;
Lab:;
}
// 如果要按ASCII值大小排列则做:
for (i=1;i<n-1;i++)
for (j=i+1;j<n;j++)
if (m[i][0] > m[j][0]){
k = m[i][0]; m[i][0]=m[j][0];m[j][0]=k;
k = m[i][1]; m[i][1]=m[j][1];m[j][1]=k;
}

for (i=1;i<n;i++) printf("%c=%d ",m[i][0],m[i][1]);

exit(0);
}
百度网友8b8a855
2010-05-30
知道答主
回答量:59
采纳率:0%
帮助的人:23.1万
展开全部
有空格码?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式