统计字符串中的字母使用频率



 
</pre><pre name="code" class="cpp">
</pre><pre name="code" class="cpp">#include<iostream>

using namespace std;

void searchA(char *p,int m[26]){
char *cc=p;
int j=0;
	do{
	switch(*cc){	
	case 'a': m[0]++; ;break;
	case 'A': m[0]++; break; 
	}
	*p++;
	}while(*cc!='\0');
	for(j=0;j<3;j++){
  	switch(j){
	  case 0: cout<<"a:"<<m[0]<<' '; break;
	  case 1: cout<<"b:"<<m[1]<<' '; break;
	  }
  }
	

};

int main() {
  // Place your code here
  char s[50];
  scanf("%s",s);
  //gets(s);
  char *cc=s;
  
  cout<<s[50]<<endl;
  int i=0;
  int j=0;
  int m[26]={
  	0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  };
  
  do{
	switch(*cc){	
	case 'a': m[0]++; ;break;
	case 'A': m[0]++; break; 
	case 'b': m[1]++; ;break;
	case 'B': m[1]++; break; 
		case 'c': m[2]++; break;
	case 'C': m[2]++; break;
		case 'd': m[3]++; break;
	case 'D': m[3]++; break;
		case 'e': m[4]++; break;
	case 'E': m[4]++; break;
		case 'f': m[5]++; break;
	case 'F': m[5]++; break;
		case 'g': m[6]++; break;
	case 'G':m[6]++;break;
		case 'h': m[7]++; break;
	case 'H': m[7]++; break;
		case 'i': m[8]++; break;
	case 'I': m[8]++; break;
		case 'j': m[9]++; break;
	case 'J': m[9]++; break;
		case 'k': m[10]++; break;
	case 'K': m[10]++; break;
		case 'l': m[11]++; break;
	case 'L': m[11]++; break;
		case 'm': m[12]++; break;
	case 'M': m[12]++; break;
		case 'n': m[13]++; break;
	case 'N': m[13]++; break;
		case 'o': m[14]++; ;break;
	case 'O': m[14]++; break;
		case 'p': m[15]++; break;
	case 'P': m[15]++; break;
		case 'q': m[16]++; break;
	case 'Q': m[16]++; break;
		case 'r': m[17]++; ;break;
	case 'R': m[17]++; break;
		case 's': m[18]++; break;
	case 'S': m[18]++; break;
		case 't': m[19]++; break;
	case 'T': m[19]++; break;
		case 'u': m[20]++; break;
	case 'U': m[20]++; break;
		case 'v': m[21]++; break;
	case 'V': m[21]++; break;
		case 'w': m[22]++; break;
	case 'W': m[22]++; break;
		case 'x': m[23]++; break;
	case 'X': m[23]++; break;
		case 'y': m[24]++; ;break;
	case 'Y': m[24]++; break;
		case'z':m[25]++;break;
	case 'Z': m[25]++; break;
	
	}
	*cc++;
	}while(*cc!='\0');
	for(j=0;j<26;j++){
	if(0!=m[j]){
	switch(j){
	  case 0: cout<<"a:"<<m[0]<<' '; break;
	  case 1: cout<<"b:"<<m[1]<<' '; break;
	  case 2: cout<<"c:"<<m[2]<<' ';break;
	  case 3: cout<<"d:"<<m[3]<<' ';break;
	  case 4: cout<<"e:"<<m[4]<<' '; break;
	  case 5: cout<<"f:"<<m[5]<<' '; break;
	  case 6: cout<<"g:"<<m[6]<<' ';break;
	  case 7: cout<<"h:"<<m[7]<<' ';break;
	  case 8: cout<<"i:"<<m[8]<<' '; break;
	  case 9: cout<<"j:"<<m[9]<<' '; break;
	  case 10: cout<<"k:"<<m[10]<<' ';break;
	  case 11: cout<<"l:"<<m[11]<<' ';break;
	  
	  	  case 12: cout<<"m:"<<m[12]<<' '; break;
	  case 13: cout<<"n:"<<m[13]<<' '; break;
	  case 14: cout<<"o:"<<m[14]<<' ';break;
	  case 15: cout<<"p:"<<m[15]<<' ';break;
	  
	  	  case 16: cout<<"q:"<<m[16]<<' '; break;
	  case 17: cout<<"r:"<<m[17]<<' '; break;
	  case 18: cout<<"s:"<<m[18]<<' ';break;
	  case 19: cout<<"t:"<<m[19]<<' ';break;
	  
	  	  	  case 20: cout<<"u:"<<m[20]<<' '; break;
	  case 21: cout<<"v:"<<m[21]<<' '; break;
	  case 22: cout<<"w:"<<m[22]<<' ';break;
	  case 23: cout<<"x:"<<m[23]<<' ';break;
	  
	  	  case 24: cout<<"y:"<<m[24]<<' '; break;
	  case 25: cout<<"z:"<<m[25]<<' '; break;
 
	  }
		}
  
  }
  return 0;
}



题目描述

编写一个程序,统计输入的一行字符串中各个字母使用频率(大小写不区分),将次数不为零的字母(输出小写字母形式)及次数输出。

输入描述

输出描述

字母和出现频率之间用冒号连接,每组对象如“a:3"和“d:2”之间用1个空格分隔



  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值