1106:年龄与疾病
【题目描述】
某医院想统计一下某项疾病的获得与否与年龄是否有关,需要对以前的诊断记录进行整理,按照0-18、19-35、36-60、61以上(含61)四个年龄段统计的患病人数占总患病人数的比例。
【输入】
共2行,第一行为过往病人的数目n(0<n≤100),第二行为每个病人患病时的年龄。
【输出】
按照0-18、19-35、36-60、61以上(含61)四个年龄段输出该段患病人数占总患病人数的比例,以百分比的形式输出,精确到小数点后两位。每个年龄段占一行,共四行。
【输入样例】
10
1 11 21 31 41 51 61 71 81 91
【输出样例】
20.00%
20.00%
20.00%
40.00%
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{ int n,m[101],i,a=0,b=0,c=0,d=0;
cin>>n;
for(i=0;i<n;i++)
cin>>m[i];
for(i=0;i<n;i++)
{
if(m[i]>0&&m[i]<=18)
a++;
else if(m[i]>=19&&m[i]<=35)
b++;
else if(m[i]>=36&&m[i]<=60)
c++;
else d++;
}
cout<<fixed<<setprecision(2)<<a*100.0/n<<"%"<<endl; //注意int型输出double的计算中常数要保留一位小数点“100.0”而不是“100”
cout<<fixed<<setprecision(2)<<b*100.0/n<<"%"<<endl;
cout<<fixed<<setprecision(2)<<c*100.0/n<<"%"<<endl;
cout<<fixed<<setprecision(2)<<d*100.0/n<<"%"<<endl;
return 0;
}