第十三周项目 2 成绩处理
2014-11-20 16:06
246 查看
/* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名称 :main.cpp * 作 者 :韩娟 完成日期 :2014年11月20日 * 版 本 号 :v1.0 * * 问题描述 : 成绩处理,输入小组人数,分数,输出小组最高分,最低分,平均分,考的最高/低分成绩的人数以及他们的编号,以及所有同学成绩的标准偏差 * 输入描述 : 输入小组人数,分数 * 程序输出 : 输出小组最高分,最低分,平均分,考的最高/低分成绩的人数以及他们的编号,以及所有同学成绩的标准偏差 */ #include <iostream> #include <cmath> using namespace std; int main() { int score[50]; //保存成绩的数组,不会超过50名 int num,i,minscore=101,maxscore=-1,average,sum=0,maxnumber=0,minnumber=0,y,S; cout<<"小组共有人数为:"; cin>>num;//小组人数 cout<<"请输入学生成绩:"<<endl; for(i=1; i<=num; ++i) { cout<<"第"<<i<<"位同学的成绩为:"; cin>>score[i]; if(score[i]>100||score[i]<0) --i; }//输入num名同学的成绩 for(i=1; i<=num; ++i) { if(score[i]>maxscore) { maxscore=score[i]; } if(score[i]<minscore) { minscore=score[i]; } sum+=score[i]; average=sum/num; } cout<<"最高成绩为:"<<maxscore<<endl; cout<<"最低成绩为:"<<minscore<<endl; cout<<"平均成绩为:"<<average<<endl;//求出并输出最高成绩、最低成绩和平均成绩 for(i=1; i<=num; ++i) { if(score[i]==maxscore) maxnumber++; if(score[i]==minscore) minnumber++; } cout<<"考的最高分的人数为:"<<maxnumber<<endl; cout<<"考的最低分的人数为:"<<minnumber<<endl; for(i=1; i<=num; ++i) { if(score[i]==maxscore) cout<<"考的最高分同学的号数为:"<<i<<endl; if(score[i]==minscore) cout<<"考的最低分同学的号数位:"<<i<<endl ; }//求出并输出考得最高成绩和最低成绩人数以及学号 for(i=1; i<=num; ++i) { y=(score[i]-average)*(score[i]-average); sum+=y; } S=sqrt(sum/(num-1)); cout<<"这组同学的标准偏差为:"<<S<<endl;//求出并输出标准偏差(选做) return 0; }
知识点总结 :
这个程序还是有点麻烦的,需要用的数组的一些应用,主要是要明白数组的用法是非常关键的。
学习心得 :
正在多多练习掌握数组的用法!
相关文章推荐