1、单纯用数组来解题

思路:从左往右循环,每次碰到一个字符就和左边的字符串比较,如果有相同的就右移,如果没有找到相同的就从这个位置向右统计个数并输出。

 #include<stdio.h>

 void calCount(char arr[])
{
int i,j,count,had;
i = j = count = had = ;
while(arr[i] != '\0')
{
count = ;
had = ;
for(j=; j<i; j++)
{
if(arr[j] == arr[i])
{
had = ;
break;
}
}
if(had == )
{
i++;
continue;
}
else
{
count++;
j = i+;
while(arr[j] != '\0')
{
if(arr[j] == arr[i])
count++;
j++;
}
printf("%c%d,",arr[i],count);
}
i++;
}
} int main(void)
{
char arr[];
scanf("%[^.]", arr);//接收任何字符,碰到'.'就结束,
printf("%s\n", arr);
calCount(arr);
return ;
}

2、用ASCII码来计算

 #include<stdio.h>

    void getChCount(char *p)
{
char arr[] = {};
int i;
while(*p != '\0')
{
arr[*p]++;
p++;
}
for(i=; i<; i++)
{
if(arr[i] > )
printf("%c%d\n",i,arr[i]);
}
} int main(void)
{
char brr[];
scanf("%[^.]",brr);//遇到字符.停止接收字符
getChCount(brr);
return ;
}

c 统计字符串中字符出现的个数的更多相关文章

  1. 设在起始地址为STRING的存储空间存放了一个字符串(该串已存放在内存中,无需输入,且串长不超过99),统计字符串中字符“A”的个数,并将结果显示在屏幕上。

    问题 设在起始地址为STRING的存储空间存放了一个字符串(该串已存放在内存中,无需输入,且串长不超过99),统计字符串中字符"A"的个数,并将结果显示在屏幕上. 代码 data ...

  2. String/StringBuilder 类 统计字符串中字符出现的次数

    1.1. 训练描述:[方法.String类] 一.需求说明:定义如下字符串: String str = “javajfiewjavajfiowfjavagkljjava”; 二.请分别定义方法统计出: ...

  3. java源码——统计字符串中字符出现的次数

    对于任意输入的一段字符串,读取并且计算其中所有字符出现的次数. 使用HashMap存储字符和其对应的出现的次数,输出时,对HashMap进行遍历. 难点在于对HashMap的遍历,第一次使用,也是学习 ...

  4. python统计字符串中字符个数

    str = "xxx" result = {} for i in set(str):#set将字符串转为集合对象,用于去重,减少计算量 result[i] = str.count( ...

  5. 1093. Count PAT’s (25)-统计字符串中PAT出现的个数

    如题,统计PAT出现的个数,注意PAT不一定要相邻,看题目给的例子就知道了. num1代表目前为止P出现的个数,num12代表目前为止PA出现的个数,num123代表目前为止PAT出现的个数. 遇到P ...

  6. 统计字符串中字符出现的次数(||和&&的区别)

    var str = "ProsperLee"; // || 返回第一个为真的表达式的值,若全为假则返回最后一个表达式的值 // && 返回第一个为假的表达式的值,若 ...

  7. js 统计字符串中字符出现的次数

    var str='abbcccdddd';var obj={};for(var i=0;i<str.length;i++){ var key=str.charAt(i); if(obj[key] ...

  8. JAVA 统计字符串中中文,英文,数字,空格的个数

    面试题:输入一行字符,分别统计出其中英文字母.中文字符.空格.数字和其它字符的个数 可以根据各种字符在Unicode字符编码表中的区间来进行判断,如数字为'0'~'9'之间,英文字母为'a'~'z'或 ...

  9. javascript 统计字符串中每个字符出现的次数

    var str = "abdcadfasfdbadfafdasdfasyweroweurowqrewqrwqrebwqrewqrejwq;;"; // console.log(nu ...

随机推荐

  1. lua学习笔记1

    lua中调用c的函数 #include <stdio.h> #include <string.h> #ifdef __cplusplus extern "C" ...

  2. Cloning Java objects using serialization

    Sometimes you need to clone objects, and sometimes you can't use their clone method, and sometimes s ...

  3. (10)Xamarin.Android - 储存数据于Windows Azure

    原文 Xamarin.Android - 储存数据于Windows Azure 如何将Xamarin.Android 与Windows Azure做结合,将Android APP上的数据丢到云端去储存 ...

  4. setPluginsEnabled(true) 谁知道android的4.3之后为什么会报错

    我也是最近才遇到这个问题的,查了下资料,setPluginEnable已经弃用了,使用webSettings.setPluginState(WebSettings.PluginState.ON);可以 ...

  5. ios jsbrige

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  6. 【POJ】2492 A bug's life ——种类并查集

    A Bug's Life Time Limit: 10000MS   Memory Limit: 65536K Total Submissions: 28211   Accepted: 9177 De ...

  7. Michael Kors - Wikipedia, the free encyclopedia

    Michael Kors - Wikipedia, the free encyclopedia Michael Kors From Wikipedia, the free encyclopedia   ...

  8. 安装python模块

    要想在python中使用import的一些模块,前提是要安装这些模块. 可以使用pip来导入模块. 打开终端,输入命令: sudo easy_install pip 安装好pip后,就可以使用pip来 ...

  9. SRM 584 div2

    早早地水完了三道题,pt1000用的是dfs,开始做的时候误认为复杂度最多就O(2^25),结果被一组O(2*3^16)的数据接近1e8给cha了.继续努力. pt250:求两个串的前缀组成的不同串数 ...

  10. 使用 AngularJS 从零构建大型应用

    0.导言 1.准备工作 2.构建框架 3.丰富你的directives 4.公用的services 5.用controllers组织业务 导言 纵览线上各种AngularJS教程,大部分都是基础与一些 ...