int main()//求字符出现的次数
{
char ch[]="!sfsajfjlwekjewiwkl@@#$%#%^^*&^*()*&(^*%&$^#1";
unsigned long len=strlen(ch);
//定义整形数组存放字符出现的次数
int arr[200]={0};
for(int i=0;i<len;i++){
// 把字符串每个字符取出 - 33 如有重复加1;
char ch1 = ch[i];
arr[ch1 - 33]++;
//现在arr数组中存的就是每个字符出现的次数
}
for(int i =0;i<95; i++){
//过滤掉没有出现的字符 打印
if(arr[i]>0)
printf("%c出现了%d次\n",i+33,arr[i]);
}
排序自己搞下
|