C语言如何利用ASCII码表统计字符串每个字符出现的次数

利用ASCII码表统计字符串每个字符出现的次数

在C语言里面写个能够统计并打印字符串中字符出现次数心想这不是常规操作吗?

定义两个char数组,输入,赋值给另一个字符数组

通过一个for循环嵌套两个for循环,比较,相同的值数组赋值=‘*’。

然后判断当数组值不等于0的时候和原数组进行比较再打印输出”

我的代码

#include
#include
#define maxsize 100
int main(void){
	char s[maxsize],s1[maxsize];
	scanf("%s",s);
	for(int i=0,length=strlen(s);i 
 

运行正确

C语言如何利用ASCII码表统计字符串每个字符出现的次数_第1张图片

##但是老胡的方法更为简单粗暴,直接利用相同字符对应的数字一样作为数组下标,进行自加

想法很新颖,代码也少……服了

#include
#include
#define maxsize 100
int main(void){
	char s[maxsize];
	scanf("%s",s);
	int asc[127]={0};//a-z字符对应ASCII码表小写字母97-122,大写字母是 65-90,小写大写相差32 
	for(int i=0,length=strlen(s);i 
 

C语言如何利用ASCII码表统计字符串每个字符出现的次数_第2张图片

但是这个程序还有个不好的地方,没有按照输入字符串的顺序打印,而是从A-Z a-z打印的

emmm……

我觉得C的输入输出太麻烦还是C++好

总结 

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

你可能感兴趣的:(C语言如何利用ASCII码表统计字符串每个字符出现的次数)