ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:103.04KB ,
资源ID:29947254      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/29947254.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(《高级语言程序设计》课程设计报告.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

《高级语言程序设计》课程设计报告.docx

1、高级语言程序设计课程设计报告学号2013-2014学年 第二学期高级语言程序设计课程设计报告题目:班级档案管理系统专业:网络工程班级:二姓名:朱和芳指导教师:孙妍姑成绩:计算机与信息工程系2014年5月11日 班级档案管理系统设计总说明一、 设计目的运用计算机语言设计班级档案管理, 通过此次课程设计,加深对此课程 基本知识的理解,提高综合运用知识的能力;掌握本课程的主要内容、课 程设计或撰写小论文的步骤和方法;以提高独立分析问题、解决问题的能 力,逐步增强实际工程训练。二、 设计内容对一个有N个学生的班级,通过该系统实现对该班级学生基本信息进行录入、显示、修改、删除、保存等操作的管理。三、设计

2、方法结合C语言的有关知识,查阅资料,对班级档案管理系统的内容进行 构思和设计,在 Microsoft Visual C+6.0平台上完成设计,并进行调试。第一章绪论 .5第章需求分析2.1问题描述 .62.2功能要求 .62.3 算法提示 .62.4项目开发的目的 7第三章概要设计3.1程序模块的组成 83.2班级档案管理系统 83.3各个程序的功能介绍. 93.4系统结构图 9第四章模块设计分析4.1程序的模块组成 104.2各个函数的主要功能. 104.3系统的功能模块的划分. 104.4总流程图 .124.5功能流程图 13第五章测试5.1存在的问题 145.2测试方案 14第六章使用说

3、明书 15第七章总结 17附录A参考文献 18B源程代码 20第一章绪论班级档案管理系统有六种功能,把这六种功能做成六个子函数。在主函数中 设计一个菜单对这六个子函数进行管理,来实现对整个系统的操作。根据课题的 要求,每个数据的结构应当包括:学号(char )、姓名(char )、性别(char )、 年龄(int )、备注(char )。对一个有N个学生的班级,通过该系统实现对该班 级学生的基本信息的录入、显示、修改、删除、保存等操作的管理。最后为了以 后按照处理后的顺序保存到文件中。第二章需求分析2.1问题描述:对一个有N个学生的班级,通过该系统实现对该班级学生的基本信息进行录入、显示、修

4、改、删除、保存等操作的管理。2.2功能要求:1、 本系统采用一个包含N个数据的结构体数组,每个数据的结构应当包括: 姓名、学号、性别、年龄、备注。2、 本系统显示这样的菜单:请选择系统功能项:A、学生基本信息录入B 、学生基本信息显示C、 学生基本信息保存D、 学生基本信息删除E、 学生基本信息修改F、 学生基本信息查询(1) 按学号查询(2) 按姓名查询(3) 按性别查询(4) 按年龄查询G、 退出系统3、 执行一个具体的功能之后,程序将重新显示菜单。4、 将学生基本信息保存到文件中。2.3算法提示1、 数据结构:结构体类型数组2、 数据库结构:下表构成该系统的基本数据库简单的班级档案管理系

5、统,能够使老师了解到相应的信息。是争对目前的现状, 把管理人员从繁忙的数据统计中解脱出来,使其具有更多地精力去从事教务管理 政策的而研究实施,教学计划的制定执行和教学质量的监督检查, 从而全面提高 教学质量,同时也减轻任课老师的负担,让其有更多的时间投入到教学和科研中, 还有学生档案管理的重要性,以及当前的档案管理的现实,为了改善这种情况, 使档案管理工作真正步入高效,健康的轨道从而促使我们开发了这个系统, 以提 高档案管理工作的效率和满足用户的基本需求为目的,实现档案管理。第三章概要设计3.1程序模块的组成主函数:void ma in ()录入函数:void Get Info ()显示函数:

6、void DisPlay ()保存函数:void Save ()删除函数:void Delect ()修改函数:void Modfiy ()查询函数:void Search ()输出函数:void prin t()1. Get In fo() 是录入函数,主要是录入学生的基本信息;2. DisPlay ()是显示函数,就是把学生的基本信息显示在电脑上;3.Save ()是保存函数,就是把学生基本信息保存下来;4. Delect ()是删除函数,把不要的信息删除;5. Modfiy ()是修改函数,修改错误的学生基本信息;6.Search ()是查询函数,查询学生的基本信息;7.pri nt (

7、)是输出函数,输出学生的基本信息。3.2班级档案管理系统struct stude nt / 设定一个内容为学生信息的结构体char name10; 名字的长度允许最大为10;char no10;/ 学号的长度允许最大为10;char sex;int age;char bnote100; 备注的长度允许最大为 100; ;3.3各个程序的功能介绍主函数:利用无限次循环例如if ( ; ; )while ()和switch ()语句实现各函数的调用,系统根据输入的数字选项来调用相应的函数。录入函数:用来录入学生的基本信息。显示函数:把录入的学生的基本信息显示在桌面上。保存函数:可以保存学生信息。删

8、除函数:可以删除学生的错误信息。修改函数:可以修改旧的信息。查询函数:方便管理员和学生查询。4退出函数:可以用来退出系统以保证学生信息的安全。保存函数:void Save()删除函数:void Delect()查询函数:void Search()修改函数:void Modify()菜单函数:void menu_select()4.2各个函数的主要功能:录入函数:录入学生的基本信息;菜单函数:显示系统主菜单;显示函数:显示所有学生信息;查询函数:方便学生查找自己基本的信息;删除函数:删除某学生的信息;保存函数:保存好学生基本信息,以免丢失。4.3系统的功能模块的划分:开始菜单界面功能选择初始化函

9、数录入学生信息显示学生信息保存学生信息删除学生信息修改学生信息查询学生信息退出系统结束整个系统除了主函数外,另外还有14个函数,实现七大功能:录入功能、显 示功能、保存功能、删除功能、修改功能、查询功能、退出系统功能。各个函数 的详细设计说明分明如下:(1)主函数main ()利用无限次循环for (;;)和swithch ()实现各函数的调用,系统根 据输入的数字选项来调用相应的函数。(2)菜单选择函数 int menu_select()这是一个无参函数,主要实现“功能选择”的界面,在这个界面里有显示系 统的九项功能,根据每个功能前面的序号进行选择。等执行完每一个函数功能后, 返回菜单。(3

10、)代码设计 初始化函数STUDENT *init ()这是一个无参函数,里面只有两个语句,它的作用是使链表初始化,使 head的值为NULL和一个清屏语句。比如:没有这个函数的话,在你没有输入任何数 据的情况下,去执行显示功能的时候会显示一些乱码。(4)输入记录函数 STUDENT *create()这是一个无参函数,用来执行学生档案的记录的输入,当学生为寸停止输入, 函数结束后,带回一个链表头的指针指向下一个学生的信息插在表头。(5)显示记录函数 void print ( STUDENT *head这是有一个不返回值的有参函数,形参为“链表头的指针”,负责对全部学生成绩的输出,不足之处就是不

11、能就是不能对学生成绩进行分页显示。4.4总流程图结束4.5功能流程图开始通过switch函数选择插入功能Void print打开文件录入学生基本信息5.1存在的问题:在我们编号程序的时候其实还是存在许多问题的, 当然这是一个过程,可以说错误基本上是不可避免的,比如说“一些输入格式问题和一些习惯性的问题而 导致的错误等等”。我个人认为系统调试需要比较扎实的基本功以及充分的细心, 因为C语言中的有些错误是不直接明了的。在这个时候就需要我们耐心的去查找错误, 有些错 误是由于我们不好的习惯造成的,而且往往很难发现,因为这些错误都是自己平 时不怎么注意的。比如花括号的使用,比如分号的使用等等。所以平时

12、调试时得 养成良好的习惯,尽量减少出错。5.2测试的方案1. 系统验证技术2. 系统确认技术3. 系统测试技术1. 将编好的源代码放到C语言的运行环境中去运行,通过运行找出其中的错误或 者是输入不规范的地方,加以改正,还有就是试一下程序能不能运行, 是不是满 足课程设计题目的要求。2. 把已经整理好的源代码放到C语言运行环境去调试一下,就是确认这个源代码 是否正确。3. 用运行系统测试源程序代码。第六章使用说明书按照菜单的提示进行选择,1表示学生信息的录入,先进行信息的录入完成 后,按回车键会弹出弹出第二个界面, 根据第二个界面进行选择。2表示信息的 显示。3表示信息的保存。4表示信息的删除。

13、5表示信息的修改。6表示信息的 查询。7表示安全退出系统。当保存好学生的基本信息的时候你可以通过 3保存学生的信息,按4是删除,删除成功后再输入你的学号会显示该学生不存在, 在按5时会显示要输入密码才能改变信息,按6时会弹出一个由四个选项组成的界 面,有按1按学号查询、2按年龄查询、3按性别查询、4按姓名查询。所以只 要你根据菜单上操作是不难的,欢迎使用!第七章总结 g 通过这次课程设计,我觉得自己的知识还远远不够,这次 C语言课程设计的“班级档案管理系统”,通过不断调试与修改,最终还是完成了,虽然参考了许 多资料,但是自己亲手完成的第一个课程设计, 还是挺激动地。这次课程设计充 分运用了自己

14、所学的东西,明白了自己的不足点,由于学艺不精,也遇到了不少 麻烦,比如画E-R图时,各实体中关系的确定,由于对系统还不够了解而找不到 一个准确的词来形容,总体规划材料太多,不易整理;相关数据库没有多注意, 这次课程设计的重点只在对整个系统的总体思路设计。通过这次设计让我明白 了,只有通过自己动手才能真正学到东西。 书本知识固然重要,但只有把它运用 于实际才会发现自己的不足和错误,才能改进,才能达到学习的最终目标。以下是我总结出的一些经验:1. 要对系统的功能做出详细的分析,并合理分解任务。2. 把分解出来的子任务,做成一个相对独立的模块。3. 在设计一个模块之前,要简单构想一下总界面的显示情况

15、。4. 针对构想出来的界面进行程序的编写。虽然我的课程设计存在许多问题,究其原因还是因为自己平时没认真学习, 以后 定会认真学习,学以致用。附录:参考文献C程序设计(第三版)谭浩强 着 清华大学出版社C语言程序设计实用指南 谭浩强 着 清华大学出版社课程设计与上级指导 谭浩强着课程设计与习题详解 葛日波着源程序:#i nclude #in clude #i nclude #in clude #define N 3 测试数据人数为3struct stude nt 设定一个内容为学生信息的结构体char name 10;/ 名字的长度允许最大为 10char no10;/ 学号的长度允许最大为10

16、char sex;int age;prin tf(ttt(欢迎使用本班级档案管理系统)tttn);printf( *欢迎进入我们的系统*nn);if(!me nu) 主菜单elseprintf(” 学生基本信息录入;press 1 n);printf( 学生基本信息显示,press 2 n);printf(” 学生基本信息保存,press 3 n);printf( 学生基本信息删除,press 4 n);printf( 学生基本信息修改,press 5 n);printf( 学生基本信息查询,press 6 n);printf( 退出学生信息系统,press 7 n);void GetI nf

17、o(struct stude nt *arr,i nt n) 学生基本信息录入char ch;for(int i=0;in;i+)printf( 输入学生的基本信息:name no age sex bnoten);sca nf(%s%s%d%c%c%s,arri. name,arri. no,&arri.age,&ch,&arri.se x,arri.b no te);void Display(struct stude nt* arr,i nt n) 学生基本信息显示prin tf( 学生基本信息:Name No Sex Age Noten);for(int i=0;in;i+)prin tf

18、(%15s%15s%15c%15d%15sn,arri. name,arri. no,arri.sex,arr i.age,arri.b no te);void Save(struct student* arr,int n) 学生基本信息保存,保存在c:stude nt.txt FILE *fp;fp=fope n(c:stude nt.txt,w+);if(fp=NULL)printf(exit(0);文件不存在!n); fwrite(arr,sizeof(struct stude nt)* n,n ,fp); fclose(fp);void Modfiy(struct stude nt*

19、arr,i nt n) 学生基本信息修改char nu mber10,ch;bool flag=false;printf(修改学生信息:n);printf(请输入学号:n);sca nf(%s ,nu mber);for(i nt i=0;i n;i+)if(!strcmp( nu mber,arri. no)prin tf(i nfor: n ame no sex age bnoten ”);prin tf(%12s%12s%12c%12d%12sn,arri. name,arri. no,arri.sex,arri.age,arri.b note);prin tf(please in pu

20、t in formatio n:n);sea nf(%s%s%c%c%d%s,arri. name,arri. no,&ch,&arri.sex,&arri .age,arri.b note);Save(arr, n);flag=true;if(flag=false)printf( 该学生不存在!:n);学生基本信息删除void Delete(struct stude nt* arr,i nt n)char nu mber10;bool flag=false;prin tf(Delete in formatio n:n);prin tf(please in put the n o: n);sc

21、a nf(%s ,nu mber);for(int i=0;in;i+)if(!strcmp( nu mber,arri. no)strcpy(arri.name,);strcpy(arri.no,);strcpy(arri.b no te,);arri.sex=;arri.age=0;Save(arr, n);flag=true;if(flag=true)printf( 该学生已删除不存在!:n);void Search(struct stude nt* arr,i nt n) 学生基本信息查询int temp,i;bool flag=false;printf( 通过学号查询,press 1

22、 n);printf( 通过姓名查询,press 2 n);printf( 通过性别查询,press 3 n);printf( 通过年龄查询,press 4 n);printf( 退出,press 5-n);sca nf(%d, &temp);switch(temp)case 1:char num10;printf( 请输入学号:n);sca nf(%s, nu m);for(i=0;i n;i+)if(!strcmp( nu m,arri. no) prin tf(%12s%12s%12c%12d%12sn,arri. name,arri. no,arri. sex,arri.age,arr

23、i.b note);flag=true;if(!flag)printf( 该学生不存在.n);break;case 2:char num10;prin tf(please in put n ame:n);sca nf(%s, nu m);for(i=0;i n;i+)if(!strcmp( nu m,arri. name)1 prin tf(%12s%12s%12c%12d%12s,arri. name,arri. no, arri.sex,arri.age,arri.b note);flag=true; if(!flag)printf( 该学生不存在.n);break;case 3:char

24、 ch;printf( 请输入性别:n);ch=getch();for(i=0;i n;i+)if(ch=arri.sex)prin tf(%12s%12s%12c%12d%12sn,arri. name,arri. no, arri.sex,arri.age,arri.b no te);flag=true;if(!flag)printf( 该学生不存在.n);break;case 4:char nu m_age;printf( 请输入年龄:n);sea nf(%d,&num _age);for(i=0;i n;i+)if(nu m_age=arri.age)prin tf(%12s%12s%

25、12c%12d%12sn,arri. name,arri. no, arri.sex,arri.age,arri.b no te);flag=true;if(!flag)printf( 该学生不存在.n);break;default:break;void mai n()struct student arrN;int select;prin t(false);scan f(%d,&select);while(0select & select7)switch(select)case 1:Getl nfo(arr,N); prin t(true); break;case 2:Display(arr,N); prin t(true); break;case 3:Save(arr,N); prin t(true); break;case 4:Delete(arr,N); prin t(true); break;case 5:Modfiy(arr,N); prin t(true); break;case 6:Search(arr,N); prin t(true);break;default:break;printf(请选择:n); sea nf(%d,&select);

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1