1 solutions

  • 0
    @ 2025-2-12 13:13:02
    #include <iostream>
    #include <iomanip>
    using namespace std;
    int n,a[105],cnt1,cnt2,cnt3,cnt4;
    double cen1,cen2,cen3,cen4;
    int main(){
        cin>>n;
        for(int i=1;i<=n;i++){
            cin>>a[i];
            if(0<=a[i]&&a[i]<=18){
                cnt1++;
            }else if(19<=a[i]&&a[i]<=35){
                cnt2++;
            }else if(36<=a[i]&&a[i]<=60){
                cnt3++;
            }else if(61<=a[i]){
                cnt4++;
            }
        }
        cen1=1.0*cnt1/n;
        cen2=1.0*cnt2/n;
        cen3=1.0*cnt3/n;
        cen4=1.0*cnt4/n;
        cout<<fixed<<setprecision(2)<<(cen1*100)<<"%"<<endl;
        cout<<fixed<<setprecision(2)<<(cen2*100)<<"%"<<endl;
        cout<<fixed<<setprecision(2)<<(cen3*100)<<"%"<<endl;
        cout<<fixed<<setprecision(2)<<(cen4*100)<<"%"<<endl;
        return 0;
    }
    

    本人是小菜,只会用多变量的方式做此题。

    输入n个数的时候,可以对它进行分类处理(看题目要求),统计出数量,用一个变量保存。

    再用一个变量记录该范围内的小数(后面转化为百分率)。

    如下:

    cen1=1.0*cnt1/n;
    

    因为两数皆为整数,所以要×1.0。

    本人是小菜,只会用iomanip的方式进行输出(别忘了换行)。

    输出时要把这个小数×100,因为要输出百分率的形式哦

    如有错误,欢迎指出。

    • 1

    Information

    ID
    442
    Time
    1000ms
    Memory
    256MiB
    Difficulty
    7
    Tags
    (None)
    # Submissions
    49
    Accepted
    13
    Uploaded By