总时间限制: 1000ms 内存限制: 65536kB
描述
某医院想统计一下某项疾病的获得与否与年龄是否有关,需要对以前的诊断记录进行整理,按照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 <stdio.h>
#include <stdlib.h>
#define N 100
int main()
{
int n;
float a1,a2,a3,a4=0.00; //用于记录不同空间的数值的个数
scanf("%d",&n);
int a[N]; //存放病人患病时的年龄
for(int i=0; i<n; i++){ //读入年龄
scanf("%d",&a[i]);
}
for(int i=0; i<n; i++){ //遍历数字,计算不同区间的人数
if(a[i]>0 && a[i]<=18){
a1++;
}
else if(a[i]>=19 && a[i]<=35){
a2++;
}
else if(a[i]>=36 && a[i]<=60){
a3++;
}
else if(a[i]>=61){
a4++;
}
}
printf("%.2f%%\n",(a1/n)*100.00); //计算并打印各区间病人人数占比
printf("%.2f%%\n",(a2/n)*100.00);
printf("%.2f%%\n",(a3/n)*100.00);
printf("%.2f%%\n",(a4/n)*100.00);
return 0;
}
每天进步一点,坚持下去。