題目大意:輸入一組單詞,按字典順序輸出每個單詞以及它在所有單詞中出現次數的百分比。
解法:使用map。map<string,int> 以單詞爲key建立map,內容爲該單詞出現的次數。
代碼:
#include<iostream>
#include<cstdio>
#include<string>
#include<map>
using namespace std;
int main(){
map<string,int> mapS;
map<string,int>::iterator iter;
string str;
int num=0;
while(getline(cin,str)){
if(str=="") break;
else{
num++;
mapS[str]++;
}
}
for (iter = mapS.begin(); iter != mapS.end(); iter++ ) {
double d;
d=((double)iter->second)/(double)num*100.0;
cout<<iter->first;
printf(" %.4f\n",d);
}
cout<<endl;
return 0;
}