【题目描述】
某医院想统计一下某项疾病的获得与否与年龄是否有关,需要对以前的诊断记录进行整理,按照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<cstdio>
using namespace std;
int a[10000];
int main(){
int i,n;
double b1,b2,b3,b4,a1=0,a2=0,a3=0,a4=0;
cin>>n;
for(i=1;i<=n;++i){
cin>>a[i];
if (a[i]<=18&&a[i])a1++;//如果a【i】 小于等于18。a1不停地加。
else if(a[i]<=35&&a[i]>18)a2++;//如果a【i】小于等于35,大于18。a2不停地加。
else if(a[i]<=60&&a[i]>35)a3++;//如果a【i】 小于等于60,大于35,a3不停地加。
else a4++;//如果上面的全不符合,a4不停地加。
}
b1=a1/n*100;//b1等于a1除以n乘100。(以下都一样)
b2=a2/n*100;
b3=a3/n*100;
b4=a4/n*100;
printf("%.2lf%%\n%.2lf%%\n%.2lf%%\n%.2lf%%\n",b1,b2,b3,b4);//输出b1,b2,b3,b4,然后小数点后保留2位小数,“\n”表示回车。
return 0;
}