问题及代码
/*
* Copyright (c) 2014, 烟台大学计算机学院
* All rights reserved.
* 文件名称:test.cpp
* 作 者:辛彬
* 完成日期:2014年 11 月 25 日
* 版 本 号:v1.0
*
* 问题描述: 输出考得最高成绩和最低成绩的同学的人数。
* 输入描述:人数及成绩。
* 程序输出:最高成绩和最低成绩的同学的人数;
*/
#include <iostream>
using namespace std;
int main()
{
int score[50]; //保存成绩的数组,不会超过50名
int num,i,h=0,l=0; //小组人数
cout<<"小组共有多少名同学?";
cin>>num;
cout<<"请输入学生成绩:"<<endl;
for(i=0; i<num; i++)
{
do
{
cout<<"请输入第"<<i<<"位同学的成绩:";
cin>>score[i];
}
while(score[i]<0||score[i]>100);
}//输入num名同学的成绩
cout<<endl;
int high=score[0],low=score[0],eve,sum=0;
for(i=0; i<num-1; i++)
{
sum+=score[i];
if(score[i+1]>high)
high=score[i+1];
if(score[i+1]<low)
low=score[i+1];
}
eve=(sum+score[num-1])/num;
cout<<"最高成绩为:"<<high<<",最低成绩为:"<<low<<",平均成绩为:"<<eve<<endl;
//求出并输出最高成绩、最低成绩和平均成绩
cout<<"取得最高成绩"<<high<<"分的人共";
for(i=0; i<num; i++)
{
if(score[i]==high)
h++;
}
cout<<h<<"人,他们的学号是:";
for(i=0; i<num; i++)
{
if(high==score[i])
cout<<i<<" ";
}
cout<<endl;
cout<<"取得最低成绩"<<low<<"分的人共";
for(i=0; i<num; i++)
{
if(score[i]==low)
l++;
}
cout<<l<<"人,他们的学号是:";
for(i=0; i<num; i++)
{
if(low==score[i])
cout<<i<<" ";
}
//求出并输出考得最高成绩和最低成绩人数以及学号
//求出并输出标准偏差(选做)
return 0;
}
运行结果: