20200820--1维数组 年龄与疾病(奥赛一本通P78 5)

//某医院想统计一下某项疾病的获得与否与年龄是否有关,需要对以前的诊断记录进行整理,按照0-18,19-35,36-60,61c以上(含61)四个年龄段统计的患病人数占总患病人数的比例。

输入:共两行,第1行为以往病人的数目n(0<n<=100),第2行为每个病人患病时的年龄。

输出:按照0-18,19-35,36-60,61c以上(含61)四个年龄段输出该段患病人数占总患病人数的比例,以百分比的形式输出,精确到小数点后两位。每个年龄段占一行,共四行。

样例输入:

10

1 11 21 31 41 51 61 71 81 91

样例输出:

20.00%

20.00%

20.00%

40.00%

#include <bits/stdc++.h>
using namespace std;
int n,a[100];
double a1,a2,a3,a4;//注意这个地方的变量不能是int,否则显示的结果前两行是0.00% ,后两行是0%
int main()
{
  cout<<"几个数字? ";
  cin>>n;
  for(int i=1;i<=n;i++)
    {
      cin>>a[i];
      if(a[i]<=18) a1++;else
      if(a[i]<=35) a2++;else
      if(a[i]<=60) a3++;else
      if(a[i]>60) a4++;
    }
  printf("%.2lf%% ",a1/n*100);
  printf("%.2lf%% ",a2/n*100);
  cout<<fixed<<setprecision(2)<<a3/n*100<<"%"<<endl;
  cout<<fixed<<setprecision(2)<<a4/n*100<<"%"<<endl;
}

原文地址:https://www.cnblogs.com/whcsrj/p/13537565.html