还剩12页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
计算机实践C/C++程序设计报告指导教师孙大松学号1002040___学生姓名张东专业材料成型及控制工程班级材型10-1__18745003626成绩二〇一二年六月廿六日一.设计题目题目编号B5题目名称写一个统计学生成绩的程序分别用子函数求出
(1)输入n个学生m门功课的成绩
(2)每个学生的平均分
(3)每门功课的平均分
(4)找出最高分所对应的学生和功课(每次10道,每道2分)二题目意义分别用单独的函数来运行,已达到题目的要求三程序设计功能图程序由5个功能模块(函数)组成,功能模块图如下图3-1程序设计功能图表3-1主函数__in说明模块名称__in模块功能主函数模块说明调用输入成绩、计算学生/课程平均成绩、计算最高分对应的学生和课程的函数,删除变量释放空间类型变量名初值值域变量说明inti0
[032767]作为计数使用intj0
[032767]作为计数使用intstudentNums
[132767]全局变量学生数量intcourseNums
[132767]全局变量课程数量charstudentName学生姓名charcourseName课程名称float__eCourseScores
[0100]该课程的平均分数float__eScores
[0100]该生的平均分数intscores
[0100]相应课程的分数__in函数程序代码如下int__in{inti=0j=0;//计数用inputScore;//输入成绩cal__eScores;//计算学生的平均成绩cal__eCourseScores;//计算课程的平均成绩get__xScores;//计算最高分对应的课程和学生fori=0;icourseNums;i++{deletecourseName[i];}fori=0;istudentNums;i++{deletestudentName[i];deletescores[i];}delete[]studentName;delete[]scores;delete[]__eScores;delete[]__eCourseScores;delete[]courseName;}表3-2输入成绩inputScore说明模块名称voidinputScore模块功能输入学生成绩模块说明输入课程和学生数量,并输入对应的分数类型变量名初值值域变量说明inti0
[032767]计数用intj0
[032767]计数用intstudentNums
[132767]全局变量学生数量intcourseNums
[132767]全局变量课程数量intscores
[0100]相应课程的分数charstudentName学生姓名charcourseName课程名称float__eCourseScores
[0100]该课程的平均分数float__eScores
[0100]该生的平均分数inputScore函数程序代码如下//输入成绩voidinputScore{inti=0j=0;//计数用cout请输入学生数量;cinstudentNums;ifstudentNums=0{cout学生数量至少为1,请重新输入;cinstudentNums;}cout请输入课程数量;cincourseNums;ifcourseNums=0{cout课程数量至少为1,请重新输入;cincourseNums;}//与课程相关变量初始化courseName=newchar*[courseNums];__eCourseScores=newfloat[courseNums];cout\n请根据提示输入所有课程名字\n;fori=0;icourseNums;i++{cout输入第i+1个课程名;courseName[i]=newchar
[255];cincourseName[i];}//于学生变量相关变量初始化studentName=newchar*[studentNums];scores=newfloat*[studentNums];__eScores=newfloat[studentNums];fori=0;istudentNums;i++{scores[i]=newfloat[courseNums];}fori=0;istudentNums;i++{cout输入第i+1个学生名字;studentName[i]=newchar
[255];cinstudentName[i];forj=0;jcourseNums;j++{lable1:cout输入studentName[i]\t的courseName[j]的成绩;floatscore=0;cinscore;ifscore100||score0{cout请重新输入成绩成绩应为0到100范围内的;coutendl;gotolable1;}scores[i][j]=score;}}}表3-3计算学生平均成绩cal__eScores说明模块名称voidcal__eScores模块功能计算学生平均成绩模块说明将该生的各科成绩相加除以课程数得到该生的平均分数类型变量名初值值域变量说明inti0[
0.32767]计数用intj0
[032767]计数用intstudentNums
[132767]全局变量学生数量intcourseNums
[132767]全局变量课程数量float__eScores
[0100]该生的平均分数cal__eScores函数程序代码如下//计算学生平均成绩voidcal__eScores{inti=0j=0;coutendl;fori=0;istudentNums;i++{__eScores[i]=0;forj=0;jcourseNums;j++{__eScores[i]+=scores[i][j];}ifcourseNums!=0{__eScores[i]/=courseNums;}cout学生studentName[i]\t的平均成绩为__eScores[i]endl;}}表3-4计算课程平均成绩cal__eCourseScorei说明模块名称voidcal__eCourseScorei;模块功能计算课程平均成绩模块说明将该课程所有学生的成绩相加除以学生数量得到该课平均分数类型变量名初值值域变量说明inti0[
0.32767]计数用intj0
[032767]计数用intstudentNums
[132767]全局变量学生数量intcourseNums
[132767]全局变量课程数量float__eCourseScores
[0100]该课程的平均分数cal__eCourseScorei函数程序代码如下//计算课程平均成绩voidcal__eCourseScores{inti=0j=0;coutendl;fori=0;icourseNums;i++{__eCourseScores[i]=0;forj=0;jstudentNums;j++{__eCourseScores[i]+=scores[j][i];}ifstudentNums!=0{__eCourseScores[i]/=studentNums;}cout课程courseName[i]\t的平均成绩为__eCourseScores[i]endl;}}表3-5计算最高分对应的课程和学生get__xScores说明模块名称voidget__xScores;模块功能计算最高分对应的课程和学生模块说明比较得到最高分数,通过二维数组即可知道对应的学生姓名和课程名称类型变量名初值值域变量说明inti0[
0.32767]计数用intj0
[032767]计数用float__xscore0
[0100]最高分数charstudentName学生姓名charcourseName课程名称get__xScores函数程序代码如下//计算最高分对应的课程和学生voidget__xScores{inti=0j=0;coutendl;int__xid_course=-1__xid_student=-1;float__xscores=0;fori=0;icourseNums;i++{forj=0;jstudentNums;j++{ifscores[j][i]__xscores{__xscores=scores[j][i];__xid_course=i;__xid_student=j;}}}if__xid_course!=-1||__xid_student!=-1{coutendl;cout最高成绩为scores[__xid_student][__xid_course]endl;cout对应的最高课程名courseName[__xid_course]endl;cout对应的学生名字为studentName[__xid_student]endl;}}四.详细设计图4-1主程序流程图五.程序运行界面图5-1代码编辑界面截图图5-2运行界面截图六.调试、分析及总结No遇到问题解决措施12345对本次设计的收获,对本课程的认识及思考七.参考资料
2.沈显君.C++语言程序设计(第二版)清华大学出版社,2010)清华大学出版社,
20054.八.综合评分以下内容任课教师填写序号考察主项教师评语得分备注1完成题目情况2代码格式规范3题目难度系数4创新性5实验报告文档6平时成绩7成绩合计。