C,课程设计报告书[1]

上传人:宝路 文档编号:7663945 上传时间:2017-09-23 格式:DOC 页数:37 大小:1.28MB
返回 下载 相关 举报
C,课程设计报告书[1]_第1页
第1页 / 共37页
C,课程设计报告书[1]_第2页
第2页 / 共37页
C,课程设计报告书[1]_第3页
第3页 / 共37页
C,课程设计报告书[1]_第4页
第4页 / 共37页
C,课程设计报告书[1]_第5页
第5页 / 共37页
点击查看更多>>
资源描述

《C,课程设计报告书[1]》由会员分享,可在线阅读,更多相关《C,课程设计报告书[1](37页珍藏版)》请在金锄头文库上搜索。

1、 淮 海 工 学 院 计算机工程学院课程设计报告设计名称: C+语言课程设计 姓 名: 学 号: 专业班级: 系 ( 院): 计算机工程学院软件工程系 设计时间: 2011.6.82011.6.24 设计地点: 计算机工程学院机房 指导教师评语:签名: 年 月 日成绩:C+课程设计报告 第 2 页,共 37 页1课程设计目的C+课程设计是计算机科学与技术专业重要的实践性教学环节之一,本次设计结合实际应用的要求,使课程设计既覆盖 C+的知识点,又接近工程实际需要。目的是通过课程设计的综合训练,培养学生实际分析问题、解决问题的能力,以及编程和动手能力,最终目标是通过课程设计这种形式,帮助学生系统掌

2、握 C+这门课程的主要内容,养成良好的编程习惯,更好的完成教学任务。2课程设计任务与要求:要求:本次课程设计利用C+程序设计课程中所学到的编程知识和编程技巧,完成具有一定难度和工作量的程序设计题目,帮助学生掌握编程、调试的基本技能,独立完成所布置的任务。要求:1、对系统进行功能需求分析2、设计合理的数据结构和系统框架3、编程简练,程序功能齐全,能正确运行4、说明书、流程图要清楚5、课题完成后必须按要求提交课程设计报告任务:设计一个学生成绩排名系统,该系统的主要功能如下:1) 具备对成绩的管理功能(添加、删除、排序)2) 具备对成绩的统计功能(最高分,最低分,平均分,及格率等)3) 具备按学号、

3、姓名、或课程名查询成绩的功能。4)学生成绩应该保存在文件中。C+课程设计报告 第 3 页,共 37 页3课程设计说明书概要设计模块说明:在我设计的程序中一共包括了九个模块,分别是:浏览模块、添加模块、删除模块、查询模块、编辑模块、排序模块、读入文件模块、统计模块、退出系统模块。这九个功能中各个都是独立分开作为子函数的,也就是说为了实现这九个功能我写了九个函数,在主函数中通过 switch 语句,把九个函数联系了起来,同时,为了实现多次使用这九个函数,就在 switch 语句外加了 for 循环。功能机构图:m a i n 函数添加功能 统计功能浏览功能排序功能删除功能编辑功能f o r 循环控

4、制语句读入文件功能查询功能退出功能s w i t c h 语句编辑班级编辑姓名编辑学号编辑成绩s w i t c h 语句按课程查询按姓名查询按学号查询按成绩排序s w i t c h 语句按课程排序按姓名排序按学号排序f o r 循环控制语句统计全班成绩统计个人成绩详细设计 总体流程图:C+课程设计报告 第 4 页,共 37 页开始f o r 循环控制语句输入 ii = 2 , d a t a_ i p u t ( )i = 1 , d a t a_ s h o w ( )i = 5 ,c o m p l i le ( )i = 4 , s e a r c h ( )i = 3 ,d e l

5、 e t e ( )i = 7 ,s a v e ( )i = 6 ,s o r t ( )i = 9 ,e r r o r ( )i = 8 ,h a n d l e ( )结束各功能模块流程图:浏览功能模块流程图 添加功能模块流程图 删除功能模块流程图C+课程设计报告 第 5 页,共 37 页开始输入 1结束开始输入 2结束输入学号 、 班级 、 姓名 、C + + 、 英语 、 数学成绩显示文件中所有学生信息NY开始输入 2结束输入要删除学生的学号显示 “ 删除成功 ”如果存在这样的学号删除该学生的所有信息显示 “ 输入错误 , 请重新输入 ”查询功能模块流程图C+课程设计报告 第 6

6、页,共 37 页开始输入 4输入一个数 rr = 1s e a r c h 1结束R = 2s e a r c h 2R = 3s e a r c h 3R = 4“ g o o d l u c k ”b r e a k修改功能模块流程图C+课程设计报告 第 7 页,共 37 页开始输入 5D a t a _ s h o w ( )输入一个数 rR = 1输入姓名R = 2输入班级R = 4R = 3输入学号输入 C + + 成绩R = 5输入英语成绩R = 7R = 6输入数学成绩结束修改成功排序功能模块流程图C+课程设计报告 第 8 页,共 37 页开始输入 6输入 rr = 2 , s

7、o r t3 ( )r = 1 , s o r t1 ( )r = 6 , s o r t6 ( )r = 5 , s o r t5 ( )r = 4 s o r t4 ( )r = 3 , s o rt 3 ( )r = 7 , “G o o d l u c k !”b r e s k结束读入文件功能模块流程图开始输入 7S a v e ( )“ 资料已保存 ”结束统计功能模块流程图C+课程设计报告 第 9 页,共 37 页NYYN开始输入 8输入 k输入 t输入 rt 是某个学生的学号输出这个学生的总分和平均分e r r o r ( )r = 2 , 输出全班英语的总分 ,平均分和及格率r

8、 = 1 , 输出全班C + + 的总分 , 平均分和及格率r = 3 , 输出全班数学的总分 , 平均分和及格率r = 4 , 输出全班最高分和最低分的信息 k = = 0结束b r e a k退出系统功能模块流程图开始输入 9e r r o r ()结束C+课程设计报告 第 10 页,共 37 页4课程设计成果源代码:#include #include#include#includeusing namespace std;struct lessonfloat cgrade;float egrade;float mgrade;struct man char name10; char clas

9、20; int num;float sum;float average;lesson less;m100;int n=100; static int e=0;void sort();void handle();void search();void error() coutma.num;if(ma.num=0) break;cinma.namema.clasma.less.cgradema.less.egradema.less.mgrade;e+;void data_show() int i;couta;for(int i=0;imi.less.cgrade)minc=mi.less.cgrad

10、e;if(maxcmi.less.egrade)mine=mi.less.egrade;if(maxemi.less.mgrade)minm=mi.less.mgrade;if(maxm(mi.less.cgrade+mi.less.egrade+mi.less.mgrade)min_score=mi.less.cgrade+mi.less.egrade+mi.less.mgrade;min_num=mi.num;strcpy(min_name,mi.name);strcpy(min_class,mi.clas);min_cgrade=mi.less.cgrade;C+课程设计报告 第 14

11、页,共 37 页min_egrade=mi.less.egrade;min_mgrade=mi.less.mgrade;for(j=0;j=60) +count1;sume=sume+mj.less.egrade;if(mj.less.egrade=60) +count2;summ=summ+mj.less.mgrade;if(mj.less.mgrade=60) +count3;pc=count1;pe=count2;pm=count3;coutk;if(k=0)coutt;for(i=0;ir; switch(r) case 1:couta; int bool=0;for(int i=0;

12、ia; int bool=0;for(int i=0;ia; int bool=0;for(int i=0;ir;switch(r) case 1:search1();break; C+课程设计报告 第 19 页,共 37 页case 2:search2();break; case 3:search3();break; case 4:couta; /i-; for(i=0;ir;switch(r) case 1:coutmi.name;break; case 2:coutmi.clas;break; case 3:coutmi.num;break; case 4:coutmi.less.cgrade;break; case 5:coutmi.less.egrade;break; case 6:coutmi.less.mgrade;break; case 7:cout=0) strcpy(temp1,mj.name); strcpy(temp2,mj.clas);temp4=mj.less.cgrade;temp5=mj.less.egrade;temp6=mj.less.mgrade;temp7=mj.num;strcpy(mj.name,mj+

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号