首页 > 代码库 > 华为机试—统计字符次数

华为机试—统计字符次数

手动输入一个字符串,仅限小写字母,统计并输出每个字符在字符串中出现的次数,并输出。


例子:

输入:aaabbbccc

输出:a 3

          b 3

          c 3


#include <stdio.h> 
#include <string>  
    
void stringOut(const char *pInputStr, long lInputLen)    
{    
    int count[26] = {0}; 

    for(int i = 0;i < lInputLen;i++)
		count[pInputStr[i] - 'a']++;

	for(i = 0;i < 26;i++)
	{
		if(count[i]==0);
		else
			printf("%c %d\n",i+'a',count[i]);
	}

}    
  
    
int main()    
{    
    char input[20];    
  
    while(scanf("%s",input)){    
        stringOut(input,strlen(input));   
    } 
	
	return 0;    
}

测试结果,可能想的不周全,欢迎查漏补缺:

技术分享

华为机试—统计字符次数