第十三周项目二成绩处理

来源:互联网 发布:南昌百盛有mac魅可专柜 编辑:程序博客网 时间:2024/05/18 20:13

问题及代码:

/*  * Copyright (c) 2014, 烟台大学计算机学院  * All rights reserved.  * 文件名称:test.cpp  * 作    者:郝俊宇   * 完成日期:2014年 11 月 22 日  * 版 本 号:v1.0  *  * 问题描述:在数组score中将要存储某小组C++程序设计的成绩,请设计实现下面的各功能函数,并在main函数中调用,组合成一个完整的应用:(1)输入小组人数及成绩,要保证成绩在0-100之间;(2)输出该小组的最高成绩、最低成绩、平均成绩;(3)输出考得最高成绩和最低成绩的同学的人数;(4)输出考得最高成绩和最低成绩的同学的学号(设数组下标即学号,可能有相同的成绩)。 * 输入描述:输入小组人数及成绩,要保证成绩在0-100之间; * 程序输出:输出该小组的最高成绩、最低成绩、平均成绩;输出考得最高成绩和最低成绩的同学的人数;输出考得最高成绩和最低成绩的同学的学号(设数组下标即学号,可能有相同的成绩)。  */ #include <iostream>#include <cstdio>#include <cmath>using namespace std;int main(void ){   int score[50];   int number,i,sum=0,max=-1,min=101,average;  cout<<"小组有多少人?"<<endl;  cin>>number;  cout<<"请输入每个人的成绩:"<<endl;   for(i=0;i<number;i++)   {       do       {           cout<<"第"<<i+1<<"个人的成绩为:";           cin>>score[i];       }       while(score[i]<0||score[i]>100);       if(min>score[i])        min=score[i];       if(max<score[i])        max=score[i];       sum=sum+score[i];   }   average=sum/number;   cout<<"最高成绩为:"<<max<<endl;   cout<<"最低成绩为:"<<min<<endl;   cout<<"平均成绩为:"<<average<<endl;   int j=0,k=0;   for(i=0;i<number;++i)   {       if(score[i]==max)        j++;       if(score[i]==min)        k++;   }   cout<<"考的最高成绩的人数为:"<<j<<",考的最低成绩的人数为:"<<k<<endl;   cout<<"考的最高成绩的同学的学号分别是:";   for(i=0;i<number;++i)   {       if(score[i]==max)       cout<<i+1<<" ";   }   cout<<endl;   cout<<"考的最低成绩的同学的学号是:";   for(i=0;i<number;++i)   {       if(score[i]==min)        cout<<i+1<<" ";   }   cout<<endl;    return 0;}


运行结果:

知识点总结:

数组的应用

学习心得:

我刚开始写完这个程序运行出来的结果直接就是一个数,我看了好长时间,后来发现原来我先写的输出然后才输入的。

 

0 0