第十三周项目二:成绩处理

/*


*copyright (c) 2014, 烟台大学计算机学院.


*All rights reserved.


*文件名称:test.cpp 


*作者:陆云杰


*完成日期:2014年11月22日 


*版本号:v1.0


* 


*


*问题描述:处理学生成绩


*程序输入:学生的成绩


*程序输出:对成绩的各种处理


*/
#include <iostream>


#include <cmath>


using namespace std;


int main()
{
    int score[50];
    int N[50],W[50];
    int num,i,s;
    cout<<"小组共有多少名同学?";
    cin>>num;
    for(i=0; i<num; i++)
    {
        cout<<"请输入第"<<i<<"位学生的成绩:";
        cin>>s;
        if(s>100||s<0)
        {
            cout<<"请输入第"<<i<<"位学生的成绩:";
            cin>>s;
        }
        score[i]=s;
    }
    int max=score[0],n;
    for(n=1; n<num; n++)
    {
        if(score[n]>=max)
        {
            max=score[n];
        }
    }
    cout<<"最高成绩为:"<<max<<endl;
    int min=score[0],p;
    for(p=1; p<num; ++p)
    {
        if(score[p]<=min)
        {
            min=score[p];
        }
    }
    cout<<"最低成绩为:"<<min<<endl;
    int average,q,SUM=0;
    for(q=0; q<num; q++)
    {
        SUM+=score[q];
    }
    average=SUM/num;
    cout<<"平均成绩为:"<<average<<endl;
    int x,y=0,r=0;
    for(x=0; x<num; x++)
    {
        if(score[x]==max)
        {
            ++y;
            N[r]=x;
            ++r;
        }
    }
    cout<<"取得最高成绩"<<max<<"分的共"<<y<<"人,他们的共们的学号是:";
    int r1;
    for(r1=0; r1<y; ++r1)
    {
        cout<<N[r1]<<" ";
    }
    cout<<endl;
    int z,w=0,r2=0;
    for(z=0; z<num; z++)
    {
        if(score[z]==min)
        {
            ++w;
            W[r2]=z;
            r2++;
        }
    }
    cout<<"取得最低成绩"<<min<<"分的共"<<w<<"人,他们的学号是";
    int r3;
    for(r3=0; r3<w; ++r3)
    {
        cout<<W[r3]<<" ";


    }
    cout<<endl;
    double S;
    int xi,Sum=0,d,D;
    for(xi=0; xi<num; xi++)
    {
        d=score[xi]-average;
        D=d*d;
        Sum+=D;
    }
    S=sqrt(Sum/(num-1));
    cout<<"标准偏差为:"<<S<<endl;
    return 0;
}


学习心得:可以利用数组来处理数据啦!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值