




已阅读5页,还剩27页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机学院计算机科学与技术专业 程序设计综合课程设计程序设计综合课程设计报告报告 (20010/2011 学年 第一学期) 学生姓名:学生姓名: 学生班级:学生班级: 学学生生学学号号: 指导教师指导教师: 2011 年 01 月 08 日 学 生 报 名 系 统 目录目录 第一章第一章 课程设计的目的和要求课程设计的目的和要求.1 第一节第一节 课程设计的目的课程设计的目的1 1 第二节第二节 课程设计的要求课程设计的要求1 1 第二章第二章 课程设计的内容课程设计的内容.1 第一节第一节 课程设计的题目及简介课程设计的题目及简介1 1 第三章第三章 设计说明设计说明.2 第一节第一节 简述简述2 2 第二节第二节 程序系统的结构程序系统的结构3 3 .1 各功能模块的实现流程图各功能模块的实现流程图3 .2 程序测试程序测试10 .3 程序的限制程序的限制17 .4 文件存储内容为文件存储内容为17 .5 软件使用说明软件使用说明18 .6 课程设计总结课程设计总结19 附录附录 1 1:参考文献:参考文献2020 附录附录 2 2:程序清单:程序清单2121 第一章第一章 课程设计的目的和要求课程设计的目的和要求 第一节第一节 课程设计的目的课程设计的目的 1.通过 C+课程设计,使学生能够将学到的面向对象的设计思想运用在具体的 工作和学习中,加深对所学知识的理解,要求学生对生活中许多具体的事物抽象出 来,并掌握本学期所学的相关概念和学习方法,实现 c+的入门。 2、通过这次课程设计掌握C+语言程序设计的编程思想,为后续课程打下 基础。 3、培养我实际操作能力和实践能力,为以后的工作打下坚实的基础。 第二节第二节 课程设计的要求课程设计的要求 利用学到的编程知识和编程技巧,要求学生: 1、对系统进行功能模块分析、控制模块分析正确 2、系统设计要能完成题目所要求的功能。 3、编程简练,可用,尽可能的使系统的功能更加完善和全面 4、使用说明书、流程图要清楚。 5、特别要求自己独立完成。 第二章第二章 课程设计的内容课程设计的内容 第一节第一节 课程设计的题目及简介课程设计的题目及简介 学生报名系统,要逐个录入其信息,如:学生的学号、姓名、计算机成绩、数 学成绩、英语成绩、物理成绩。要求运用所学知识来实现本次设计要求,并统计学 生人数。 文本界面为: 1.录入报名学生信息 2.查找报名学生信息 3.修改报名学生信息 4.删除报名学生信息 5.显示所有的报名人数 6.显示所有报名的学生的信息 7.退出 第三章第三章 设计说明设计说明 第一节第一节 简述简述 总体结构我们采取模块化方式进行程序设计,要求程序的功能设计、数据结构设计及整体 结构设计合理。也可根据自己对题目的理解增加新的功能模块 系统以菜单界面方式(至少采用文本菜单界面,如能采用图形菜单界面更好) 工作,运行界面友好,演示程序以用户和计算机的对话方式进行 (1)首先,看题目要求,每一条记录包括一个学生的学号、姓名、计算机成绩、 数学成绩、英语成绩、物理成绩。同时,应具备以下功能: 1、输入功能:一次可以完成自定义学生人数的学生信息记录的输入。 2、查找功能:选择学号输入该信息查询符合条件的学生信息。 3、修改功能:对指定学生的信息进行修改。 4、删除功能:对指定学生的信息进行删除。 5、统计功能:对本次所有报名学生人数进行统计。 6、显示功能:将以上功能操作后的学生信息显示出来。 7、退出主菜单。 第二节第二节 程序系统的结构程序系统的结构 .1 各功能模块的实现流程图各功能模块的实现流程图 定义一个包涵 100 个学生信息的结构体数组。 1 录入学生信息 调用函数 void setup(),用一个 for 循环输入要录入学生的信息。定义一个字 符数据 str,如果输入 n 则循环停止,函数功能结束,输入 y 则继续循环,输入下 一个学生的信息。函数无返回值,没有参数,没有时间限制。输入的学生信息,学 号为整型数据,学生姓名为字符型数组,计算机成绩、数学成绩、英语成绩、物理 成绩为整型数据,该函数没有输出功能,只实现学生信息的输入 流程图,如 图 3-2-1-1 所示。 Str=n i=i+1 i=0 I=100 N Y N Y 开始 结束 输入学生信息 图 3-2-1-1 2 查找学生信息 调用函数 int lookfor(int m),将学生的学号作为实参传给函数的形参,用 一个 for 循环,通过调用录入学生信息函数,结构体数组中已存有相应的信息每 次都用参数与结构体数组中定义的学号进行比较,如果两者相等,则返回结构体 数组编号,用于主函数输出相应学生的信息,循环语句结束后,还找不到结构体 数组中的信息与参数的信息相等,则函数返回 -1 值。本函数的形参为整型数据, 传入的实参也应该为整型数据,本函数不受时间限制,本函数没有输入输出功能, 只有函数返回值。 流程图,如 图 3-2-1-2 所示 i=100 i=0 m=stui.no N Y N Y 开始 结束 i=i+1 Return -1 Return i 图 3-2-1-2 3 修改学生的信息 调用 void edit()函数,定义字符型数组 ch30,整型变量 s1,s2,s3,s4,整型变量 t,m,temp。输入 m,m 为你想修改学生的学号, 调用查找学生信息的函数,查找是否有该学生信息,有则可以进行修改,没 有则输入没有此学号,则不用进行修改,函数结束,用 if else 语句选择是 否有此学号,if(temp!=-1)即调用查找学生信息函数,返回值不为-1,说明 此号存在,则执行输入 t 语句,即输入你的选择,接下来执行 switch(t)语 句,case 1 是对姓名进行修改,需要重新输入学生的姓名,学生的姓名为定 义的字符型数组 ch30;case 2 是对计算机成绩进行修改,需要重新输入学 生的计算机成绩。计算机成绩为前面定义的 s1;case 3 是对数学成绩进行修 改,需要重新输入学生的数学成绩。数学成绩为前面定义的 s2;case 4 是对 英语成绩进行修改,需要重新输入学生的英语成绩。英语成绩为前面定义的 s3;case 5 是对物理成绩进行修改,需要重新输入学生的物理成绩。物理成 绩为前面定义的 s4;else 则是无此学生学号,不用进行修改。本函数无函数 返回值,无参数,受时间限制,完成学生信息修改后,函数立即结束,进入 主界面。本函数只有输入数据,不用输出数据。 流程图,如图 3-2-1-3 所示。 输入 m 的值 temp=-1 temp=lookfor(m) N 1 输入 t 的值 t strcpy(st utemp. name,ch) 输入 ch 输入 s1 输入 s2 输入 s3 输入 s4 stutemp .comput er=s1 stutemp .math=s 2 stutemp .english =s3 stutemp .physics =s4 开始 23 4 5 结束 输出此号 不存在 Break Y 图 3-2-1-3 4、删除学生信息 调用 void Delete()函数,定义整型数据 temp,m,m 为输入学号, temp=lookfor(m),调用查找学生信息函数,用 if else 语句执行下列操作, if(temp!=-1)则执行删除学生信息操作,对结构体数组中相应信息赋值 0 或 0 ,结构体数组中是整型变量的信息赋值为 0,字符型数组变量赋值为0 。 else 则执行无此学号,不能进行删除操作。本函数无函数返回值,无参数,受时 间限制,完成学生信息修改后,函数立即结束,进入主界面。本函数只有输入数 据,不用输出 流程图,如图 3-2-1-4 所示。 输入 m 的值 temp=-1 temp=lookfor(m) N 开始 Y stutemp.no=0 0=0 puter=0 stutemp.math=0 stutemp.english=0 stutemp.physics=0 输出此号 不存在 结束 图 3-2-1-4 5 人数的统计 定义全局变量 a,执行录入信息是执行 a+,删除信息则执行 a-。 调用 void baomingshu()函数,在函数中输入 a 的值,a 的值为最后经过处理 信息后的报名人数。本函数只有简单的输出选项,无函数返回值,无参数,不受 时间限制。 流程图,如图 3-2-1-5 所示。 开始 执行 setup 函数 执行 Delete 函数 a=0 a=a+1 a=a-1 开始 N N Y Y 图 3-2-1-5 6、主函数 定义整型变量 menu,num,tem。执行 switch(menu)语句,case 1 调用输入 学生信息函数;case 2 输入学生的学号,调用查找学生信息函数,函数返回值不 等于-1 则依次输入结构体数组信息,函数返回值等于-1 则输出无此学号;case 3 调用修改学生信息函数;case 4 调用删除学生信息函数;case 5 调用显示所有 报名数的函数;case 6 用 for 循环语句依次输出结构体数组中学生的信息;case 7 不执行相应操作; 流程图,如图 3-2-1-6 所示。 输入 m 的值 temp=-1 temp=lookfor(m) N 输入 t 的值 执行 switch(t)语句 开始 结束 Y 图 3-2-1-6 .2 程序测试程序测试 当我们编写完所有的代码后,我们对整个程序进行了一次比较系统的测试,对 各个子系统的主要功能也都进行了检测,以确保程序的正确性,同时也希望程序能 够完成对报考学生按某项已知的信息来查询学生的所有信息。我们逐一对每个界面 和函数都进行了详细的测试,确保程序的正确性和完整性。 以下是使用者按不同的身份进行不同操作的结果截图: 1 录入学生信息 录入学生信息如图 3-2-2-1 所示。 图 3-2-2-1 2 查找学生信息 查找学生信息如图 3-2-2-2 所示 图 3-2-2-2 3 修改学生信息 (1)修改学生姓名 修改学生姓名前的界面如图 3-2-2-3 所示。 修改学生姓名后的界面如图 3-2-2-4 所示。 图 3-2-2-3 图 3-2-2-4 (2)修改计算机成绩 修改学生计算机成绩前的界面如图 3-2-2-5 所示。 修改学生计算机成绩后的界面如图 3-2-2-6 所示。 图 3-2-2-5 图 3-2-2-6 (3)修改数学成绩 修改学生姓名前的界面如图 3-2-2-7 所示。 修改学生姓名后的界面如图 3-2-2-8 所示。 图 3-2-2-7 图 3-2-2-8 (4)修改英语成绩 修改学生姓名前的界面如图 3-2-2-9 所示。 修改学生姓名后的界面如图 3-2-2-10 所示。 图 3-2-2-9 图 3-2-2-10 (5)修改物理成绩 修改学生姓名前的界面如图 3-2-2-11 所示。 修改学生姓名后的界面如图 3-2-2-12 所示。 图 3-2-2-11 图 3-2-2-12 4.删除学生信息 删除学生信息前的界面如图 3-2-2-13 所示 删除学生信息后的界面如图 3-2-2-14 所示 图 3-2-2-13 图 3-2-2-14 5.显示报名数 显示所有报名数的界面如图 3-2-2-15 所示。 图 3-2-2-15 6.显示所有报名学生信息 显示所有报名学生信息如图 3-2-2-16 所示。 图 3-2-2-16 7 退出系统 退出系统的界面如图 3-2-2-17 所示。 图 3-2-2-17 .3 程序的限制程序的限制: 本程序如果学院和项目较多时候,输入较为繁琐,容易输错,时间间断性较小, 显示的信息输出有点杂乱。 .4 文件存储内容为文件存储内容为: 学号 姓名 计算机成绩 数学成绩 英语成绩 物理成绩 1 王去昂 89 25 85 96 2 赖和帮 58 86 87 59 3 王博 48 88 45 85 4 郝德喜 84 25 62 55 5 李玉龙 89 25 85 96 6 李云龙 48 88 45 85 7 离歌笑 89 25 85 96 8 眼三娘 89 25 85 96 9 贺小美 58 86 87 59 10 柴胡 89 25 85 96 11 刍狗 89 25 85 96 12 金如意 58 86 87 59 14 双双 48 88 45 85 14 宝来应 84 25 62 55 15 应务求 89 25 85 96 16 郑东流 48 88 45 85 17 李铁 89 25 85 96 18 王强 89 25 85 96 19 赵子龙 58 86 87 59 20 阳时冒 89 25 85 96 .5 软件使用说明软件使用说明 操作系统 Windows Microsoft Visual C+6.0 中运行 软件使用说明,如图 4、输入要删除的学 生的编号,删除学 生信息。 1 输入学生的信 息:学号、姓名、 计算机成绩、数 学成绩、英语成 绩、物理成绩 5 统计多有报名 人数的人数, 并输出 7 退出系统 6 显示多有学 生的信息 输入你的选择 3、修改学生的编号、 修改学生的,编号、 姓名、计算机成绩、 数学成绩、英语成 绩、物理成绩 学生报名系统 使用说明图使用说明图 菜单 1.录入学生信息 2.查找学生信息 3.修改学生信息 4.删除学生信息 5.显示信息统计 6.显示所有学生信息 7. 退出 .6 课程设计总结课程设计总结 这三周的 C+课程设计,时间上说长不长,说短也不短,却让我学到了很多, 第一点就是:C+很难,似乎是学不完的,你觉得自己了解一点,是总会发现还有很 多自己所不懂的东西,还有很多自己所没探知的领域,很多知识运用到实践中很有 一定的难度,看着自己和同学的程序运行结果,突然发现 C+真的很神奇,居然能 运行出那么漂亮的系统,看着运行结果。 在我们上机调试程序的过程中,我遇到了很多的问题,说实话这次课程设计自 己没有出多大的力,大部分都是借鉴同学的设计成果,自己设计是总是觉得没有头 绪,无从下手。看到同学认真看程序的样子,还有修改程序时的熟练,我很羡慕他, 我想,我也要将 C+学好,在将来能为我的就业加分。 在这期末考试前期,学院给我们安排的课程设计周,总让我们觉的有些为难我 们,这样一个复杂困难而又繁琐的作业,似乎弄得我们既没有时间也没有心情复习, 我曾一度地抱怨过学院,在完成它之后,我发现我错了,课程设计不仅让我们巩固 了所学的知识,还使得我们学习到了更多平时所忽略的,最重要的是,它磨砺了我 们,让我们在大学的下一个阶段能更好的成长。 附录附录 1 1:参考文献:参考文献 1.谭浩强 主编, C+程序设计 ,清华大学出版社,2004 年第 1 版 2.李春葆、董尚燕、余云霞编著, C+面向对象程序设计 ,清华大学出版社,2008 年第 1 版 附录附录 2 2:程序清单:程序清单 #include #include #include using namespace std; int a=0; struct student /定义包涵 100 个学生信息的结构体数组 int no; char name30; int math; int computer; int english; int physics; stu100=0,“0“,0,0,0,0; / 对结构体数组赋初值 void setup(); / 一些列函数函数声明 int lookfor(int m); void edit(); void Delete(); void baomingshu(); int main() /主函数 loop: coutmenu; / 输入相应的选择 system(“cls“); switch (menu) case 1: setup(); / 调用录入学生信息函数 system(“cls“)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 保险销售流程培训
- 小学禁毒安全教育主题班会记录
- 职业病诊断讲解
- 集团安全培训课件
- 城市污水管网建设工程申请报告
- 2025年扎口机项目建议书
- 五年级上册珍珠鸟教学设计
- 五年级家乡的美景500字作文
- 《GBT3367.2-2018内燃机车词汇第2部分:柴油机》深度解析
- 城市黑臭水体治理实施方案中的水环境治理工程招投标研究报告
- JGJ106-2014 建筑基桩检测技术规范
- 2023年中国石化河北石家庄石油分公司社会招聘20人笔试模拟试题及答案解析
- 太阳能热水系统设计
- 医务科岗前培训
- 共青团团课主题班会课件PPT模板PPT
- GB/T 8685-2008纺织品维护标签规范符号法
- 合成氨行业发展现状及趋势分析
- 2022年徐闻县(中小学、幼儿园)教师招聘笔试试题及答案解析
- 网电部管理重点(中)
- 新生儿复苏解析课件
- ABI7500荧光定量PCR仪标准操作规程
评论
0/150
提交评论