学生籍贯记录簿设计.doc_第1页
学生籍贯记录簿设计.doc_第2页
学生籍贯记录簿设计.doc_第3页
学生籍贯记录簿设计.doc_第4页
学生籍贯记录簿设计.doc_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

华科学院计算机科学与技术系 信息管理与信息系统专业 程序设计综合课程设计程序设计综合课程设计报告报告 (2010/2011 学年 第一学期) 学生姓名:学生姓名: 学生班级:学生班级: 学学生生学学号号: 指导教师指导教师: 2011 年 01 月 12 日 程序设计综合课程设计 1 目 录 第一章 课程设计的目的和要求1 1.1 课程设计的目的: 1 1.2 课程设计的要求: 2 第二章 课程设计任务内容2 2.1 考核内容 2 2.1.1 编写 C+语言程序.2 2.1.2 课程设计报告 3 2.2 课题 .3 第三章 详细设计说明3 3.1 总体设计: 3 3.2 函数功能说明: 3 3.3 详细设计流程图: 4 3.3 运行结果: 6 第四章 软件使用说明9 4.1 程序运行环境 9 4.2 程序操作方法 9 第五章 课程设计心得与体会.10 附录一 参考文献 .11 附录二 程序清单 .12 程序设计综合课程设计 2 程序设计基础程序设计基础课程设计课程设计 学生籍贯信息记录簿学生籍贯信息记录簿 第一章第一章 课程设计的目的和要求课程设计的目的和要求 1.11.1 课程设计的目的:课程设计的目的: 用高级程序语言设计出学生籍贯纪录系统,实现查找方便快捷。通过用高级程 序语言制作程序,熟悉用高级程序语言编程的操作和步骤,学习高级程序语言的运 用,以及高级程序语言实验报告的书写格式,使学生掌握一门高级程序设计语言, 了解面向对象程序设计的基本概念与方法,进而学会利用 C+语言学会解决一般应 用问题,并为后续的专业课程奠定程序设计基础。 1.21.2 课程设计的要求:课程设计的要求: 课程设计要求学会分析研究计算机加工的数据结构的特性,了解并掌握涉及的 数据选择的适当的逻辑结构、存储结构及其相应的算法等,同时要求在掌握的基础 上学会编写程序,使程序结构清楚和正确易读,符合软件工程的规范。 通过编写 C+程序,设计学生籍贯信息管理系统,可以方便对学生信息进行查 找及管理,或者添加、删除及修改学生信息,将信息永久保存。 程序设计综合课程设计 3 第二章第二章 课程设计任务内容课程设计任务内容 2.12.1 考核内容考核内容 2.1.1 编写编写 C+语言程序语言程序 针对编写的 C+程序,应该主要考查下列内容: 是否符合题目要求,是否完成了主要功能; 是否存在语法错误、逻辑错误及运行错误; 程序设计是否合理; 程序是否具有良好的可读性和可靠性; 是否符合结构化程序设计所倡导的基本理念; 用户界面是否友好。 2.1.22.1.2 课程设计报告课程设计报告 针对提交的课程设计报告,应该主要考查下列内容: 程序设计的报告内容是否全面,观点是否正确; 设计过程是否符合结构化程序设计方法的基本原则; 层次是否清楚,语言是否通顺; 各种图表是否规范;是否具有良好的程序设计习惯。 2.2 课题课题 设计一个学生籍贯信息记录簿,实现以下功能: 1)创建信息并以磁盘文件保存; 2)读取磁盘文件并显示输出所有学生的籍贯信息; 3)按学号或姓名查询其籍贯; 4)按籍贯查询并输出该籍贯的所有学生; 5)能添加、删除和修改学生的籍贯信息; 备注:每个学生信息包括,学号、姓名、籍贯; 程序设计综合课程设计 4 第三章第三章 详细设计说明详细设计说明 3.13.1 总体设计:总体设计: 1.设置输入输出流及将程序由磁盘文件保存,构件类 stu,其主要包括:学号,姓名, 籍贯. 2.构建无返回值 main 函数,输出由与程序相关操作构成的信息链表 3.根据链表设置利用 switch 函数和循环函数将链表中的内容一一实现. 3.23.2 函数功能说明:函数功能说明: main()主函数 每一 C 程序都必须有一 main()函数, 可以根据自己的爱好把它放在程序某个地 方。程序之前输入学生信息,main()申明主函数,输出相应的功能函数。 #include头文件 iostream 意为输入输出流,包含了对输入输出流进行操作所需的基本信息; string 意为字符串,用于定义程序中的字符串;fstream 用于用户管理的文件的 I/O 操作。 using namespace 命名空间名 using namespace 一次只能声明一个命名空间成员,using namespace std 声明了在本作用域中要用的命名空间 std 中的成员。 break 语言 break 语句可以使流程跳出 switch 结构,继续执行 switch 语句下面的一个语 句。其作用为使流程从循环体内跳出循环体,即提前结束循环,接着执行循环体下 面的语句。break 语句只能用于循环语句和 switch 语句 内,不能单独使用或用于 其他语句中。 程序设计综合课程设计 5 3.33.3 详细设计流程图:详细设计流程图: 图 3-1 系统设计流程图 子函数流程图如下: 图 3-2 录入函数流程图 程序设计综合课程设计 6 图 3-3 增加/删除函数流程图 图 3-4 查询函数流程图 程序设计综合课程设计 7 图 3-5 输出所有信息函数流程图 3.33.3 运行结果:运行结果: 1.输入程序检查程序是否有误并对其进行运行,其运行结果如下图(3-6)所示 图 3-6 程序界面 2.在第一步的基础上接着按键盘数字“1”输入所有学生的信息资料,然后对其 进行查找,首先输入键盘数字“2”查看输入的学生信息资料(如图 3-7 所示) 程序设计综合课程设计 8 图 3-7 学生的信息资料 3.通过学号进行查找,输入键盘数字“3” ,任意输入学号查询(如图 3-8 所示) 图 3-8 学号查询 4.再通过姓名查找,首先退出先前的学号查找,再输入键盘数字“4”屏幕显示 按姓名查找,再输入要查找的学生姓名并查询其相关信息(如图 3-9 所示) 程序设计综合课程设计 9 图 3-9 姓名查询 5.再次退出按姓名查找,输入键盘数字“5”通过籍贯查找学生,输入要查找的 学生的籍贯再进行筛选(如图 3-10 所示) 图 3-10 籍贯查询 程序设计综合课程设计 10 第四章第四章 软件使用说明软件使用说明 4.14.1 程序运行环境程序运行环境 程序运行的环境 Win9X/Win2000/WinXP/Win2003 4.24.2 程序操作方法程序操作方法 上机操作一般包括以下几个步骤: 1. 进入 C+工作环境(Visual C+ 6.0 版本). 2. 输入以编译好的程序. 3. 检查自己所编译的程序是否有输入或者是语法性错误,如有及时改正. 4. 进行编译和连接,如果在编译和连接时出现错误,屏幕上会显示出错信息,按 照提示找到出错位置和原因并加以改正,再进行编译,如此反复直到顺利通过 编译和连接为止. 5. 运行程序并分析结果是否合理. 6. 输出程序清单和运行结果. 程序设计综合课程设计 11 第五章第五章 课程设计心得与体会课程设计心得与体会 在本次课程设计中,我利用到了本学期学到的大部分知识,而在次程序中,最 主要运用是在数组和类及在指针的运用方面。同时明白只要充分的融会贯通在课堂 上学会的东西并在课后积极的进行程序设计的训练,增加自己对 C+程序语言的了 解,并应取尽早的熟练的使用这一门语言。 通过此学期的学习我了解到了 C+作为一种面向对象的程序设计语言,它支持对 类的抽象。而在此程序中,主要运用的知识为函数的循环系统,类的组成,对象成 员的应用等,而访问对象中的成员可以有三种方法,通过对象名和成员运算符访问 对象中的成员,通过指向对象的指针访问对象中的成员,通过对象的引用变量访问 对象中的成员。 课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼 实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术 发展的日新日异,当今计算机应用在生活中可以说得是无处不在。因此作为二十一 世纪的大学来说掌握计算机开发技术是十分重要的。 回顾起此次课程设计,至今我仍感慨颇多,的确,自从拿到题目到完成整个编 程,从理论到实践,在整整一个星期的日子里,可以学到很多很多的的东西,同时 不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。 通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远 不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真 正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过 程中遇到问题,这毕竟独立做的,难免会遇到过各种各样的问题,同时在设计的过 程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢 固,比如说结构体通过这次课程设计之后,一定把以前所学过的知识重新温故。 程序设计综合课程设计 12 附录一附录一 参考文献参考文献 1 G.Perry. C+程序设计教程 北京:清华大学出版社 ,1994 年 2谭浩强, C+程序设计 北京 :清华大学出版社 3丁勇,彭积云,查金旺 学生管理系统的设计与实现 程序设计综合课程设计 13 附录二附录二 程序清单程序清单 #include #include #include using namespace std; class CStudent private: int ID; /学号 string Province; /籍贯 string Name; /姓名 public: void setID(int id) ID=id; void setProvince(string province) Province=province; void setName(string name) Name=name; int getID() return ID; string getProvince() return Province; string getName() return Name; ; CStudent student1000; int n = 0; /数组学生总数 string fileName=“students.txt“; int AddStudent(); /添加一个学生到数组 int Loop(); /显示数组中所有学生 int AddToFile(); /加数组学生到文件 int SaveFile(); /数组到文件 程序设计综合课程设计 14 int ShowFile(); /显示文件所有学生 int FindID(); /按学号查询学生 int Findname(); /按姓名查询学生 int FindProvince(); /按籍贯查询学生 int Delete (); /删除一个学生 int ReadFile(); /文件输入数组 int Remove (); /修改一个学生 int Rediscovername(); /重新输入学生 int ReadFile(); /文件输入数组 void main() int k=-1; while(k!=0) coutk; 程序设计综合课程设计 15 if (k=1) AddStudent(); else if(k=2) Loop(); else if(k=3) AddToFile(); else if(k=4) ShowFile(); else if(k=5) FindID(); else if(k=6) FindProvince(); else if(k=7) Delete(); else if(k=8) Remove(); else if(k=9) ReadFile(); else if(k=0) printf(“完成!n“); else printf(“你输入了个错误的数字!n“); return; int FindProvince() int id; string province1,province2; coutidprovince2) if(province1=province2) coutid1; ifstream iFile(fileName.c_str(); while(iFileid2province) if(id1=id2) coutprovince1; ifstream iFile(fileID.c_str(); while(iFilenameprovince2) if(province1=province2) coutid1; ifstream iFile(fileID.c_str(); while(iFilename2province) if(name1=name2) coutid; ReadFile(); for(i=0;iidprovince; studentn.setID(id); studentn.setProvince(province

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论