您的位置:首页 > 其它

第十四周 项目二--成绩处理

2013-11-27 20:38 337 查看
/*
*程序的版权和版本声明部分:
*Copyright(c)2013,烟台大学计算机学院学生
*All rights reserved.
*文件名称:
*作者:尚振伟
*完成日期:2013年 11月27日
*版本号:v0.1
*对任务及求解方法的描述部分:
*输入描述:无
*问题描述:先求出来最大最小值和平均值,再输出最大和最小值有几个,分别是哪一个。
*程序输入:
*程序输出:
*问题分析:
*算法设计:
*/
我的程序:
#include <iostream>
using namespace std;
int main(void)
{
int score[50];   //保存成绩的数组,不会超过50名
int num,i,ave,sum=0;  //num代表小组人数
cout<<"小组共有多少名同学?";
cin>>num;
cout<<"请输入学生的成绩:"<<endl;
//输出num名同学的成绩
for(i=0; i<num; i++)
{
cout<<"输入第"<<i<<"位同学的成绩:";
cin>>score[i];
if(score[i]>100||score[i]<0)
{
cout<<"输入第"<<i<<"位同学的成绩:";
cin>>score[i];
}
}
//求出并输出最高,最低和平均成绩
int max,min;
int n=0,c=0;
max=0;     //定义max的初始值为0
for(i=0; i<num; i++)
{
if(score[i]>max)
{
max=score[i];
}
}
cout<<"最高成绩为:"<<max<<",";
min=101;         //因为score的值在0~100之间,所以定义min的初始值为101
for( int i=1; i<num; i++)
{
if(score[i]<min)
{
min=score[i];
}
else
min=min;
}
cout<<"最低成绩为:"<<min<<",";
for(i=0; i<num; i++)
{
sum+=score[i];
}
ave=sum/num;
cout<<"平均成绩为:"<<ave<<endl;
//求出并输出考的最高成绩和最低成绩人数以及学号
for(i=0;i<num;i++)
{
if(score[i]==max)
{
n++;
}
}
cout<<"取得最高成绩"<<max<<"分的共"<<n++<<"人,他们的学号是:";
for(i=0;i<num;i++)
{
if(score[i]==max)
{
cout<<i<<" ";
}
}
for(i=0;i<num;i++)
{
if(score[i]==min)
{
c++;
}
}
cout<<endl;   //换行
cout<<"取得最低成绩"<<min<<"分的共"<<c++<<"人,他们的学号是:";
for(i=0;i<num;i++)
{
if(score[i]==min)
{
cout<<i<<" ";
}
}
return 0;
}


结果展示:

 



心得体会:调用函数那个法暂时还不会,先用这个法做一遍,一定会用调用函数的法再做一遍。。。。。。。。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: