复制Markdown 展开
题目描述
某医院进行一项研究,想知道某项疾病是否与年龄有关。因此对以往的诊断记录进行整理,统计 0-18 、 19-35 、 36-60、 61 及以上这四个年龄段的患者人数占总患者人数的比例。
输入格式
输入共 22 行。
第一行包含一个整数 �N(0<�≤1000<n≤100),表示总患者人数。
第二行包含 �N 个整数,代表这 �N 个患者就诊时的年龄。
输出格式
输出共 44 行。
第 11 行包含一个百分数,这个百分数保留小数点后 22 位,代表 0−180−18 岁这个年龄段的患者人数占总患者人数的比例。
第 22 行包含一个百分数,这个百分数保留小数点后 22 位,代表 19−3519−35 岁这个年龄段的患者人数占总患者人数的比例。
第 33 行包含一个百分数,这个百分数保留小数点后 22 位,代表 36−6036−60 岁这个年龄段的患者人数占总患者人数的比例。
第 44 行包含一个百分数,这个百分数保留小数点后 22 位,代表 6161 岁及以上这个年龄段的患者人数占总患者人数的比例。
输入输出样例
输入 #1复制
10 1 11 21 31 41 51 61 71 81 91
输出 #1复制
20.00% 20.00% 20.00% 40.00%
输入 #2复制
12 10 19 86 94 58 57 34 19 88 69 5 13
输出 #2复制
25.00% 25.00% 16.67% 33.33%
题解
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
int a[n];
double z,b,c,d;
for(int i=0;i<n;i++){
cin>>a[i];
if(a[i]>0&&a[i]<=18)
z=z+1;
if(a[i]>18&&a[i]<=35)
b=b+1;
if(a[i]>35&&a[i]<=60)
c=c+1;
if(a[i]>=61)
d=d+1;
}
z=z/n;
b=b/n;
c=c/n;
d=d/n;
printf("%.2f",z*100);
cout<<"%"<<endl;
printf("%.2f",b*100);
cout<<"%"<<endl;
printf("%.2f",c*100);
cout<<"%"<<endl;
printf("%.2f",d*100);
cout<<"%"<<endl;
return 0;
}