#include <iostream>
#define N 26 //26个字母
using namespace std;
int main(int argc, const char * argv[]) {
string str = "HelloWorld";
int num[N] = {0};
int strSize = (int)str.size(); //获得字符串长度,避免后面重复计算
for(int i = 0;i < str.size() ; i++) {
if('A' <= str[i] && str[i] <= 'Z') //字母为大写
num[str[i] - 'A']++;
else if('a' <= str[i] && str[i] <= 'z') //字母为小写
num[str[i] - 'a']++;
else { //异常检查,输入的str含有非字母字符直接退出
cout<<"字符串中包含非字母字符,非法"<<endl;
return 0;
}
}
for(int i = 0;i < N;i++)
cout<<(char)(i + 'A')<<" : "<<(num[i] * 1.0) / strSize<<endl; //输出各个字母出现的频率
return 0;
}
网友评论