#include<bits/stdc++.h>
#define ll long long
using namespace std;
/*
double b = 3.1415926535
C++的保留小数
fixed << setprecision(小数位数)<<要保留小数的变量或表达式
fixed << setprecision(2)<<b
C语言格式化输出
printf("%.小数的位数f",要保留小数的变量或表达式 )
printf("%.2f",b)
*/
int main(){
char c;//要查找的字符
string s;//待查找的字符串
int cnt=0;//c在s中出现的次数
/*
a
morning
*/
cin>>c;//接收字符
//这道题目中存在的坑,换行是一个字符,需要接收,不然getline会直接扫描当前行
getchar();//可以接收一个字符
getline(cin,s);//字符串可能待空格
//遍历字符串
for(int i=0;i<s.size();i++){
if(s[i]==c) cnt++;
}
//求百分比:出现的次数/字符串长度*100
//cout<<fixed<<setprecision(2)<<1.0 * cnt / s.size() * 100 <<"%";
printf("%.2f%%",1.0 * cnt / s.size() * 100);
return 0;
}
标签:5003,字符,概率,字母,long,字符串,接收,getline
From: https://www.cnblogs.com/risnotl/p/18517833