当前位置:文档之家› 高级语言程序设计课程设计报告

高级语言程序设计课程设计报告

高级语言程序设计课程设计报告IMB standardization office【IMB 5AB- IMBK 08- IMB 2C】2013-2014学年第二学期《高级语言程序设计》课程设计报告题目:班级档案管理系统专业:网络工程班级:二姓名:朱和芳指导教师:孙妍姑成绩:计算机与信息工程系2014年5月11日班级档案管理系统设计总说明一、设计目的运用计算机语言设计班级档案管理,通过此次课程设计,加深对此课程基本知识的理解,提高综合运用知识的能力;掌握本课程的主要内容、课程设计或撰写小论文的步骤和方法;以提高独立分析问题、解决问题的能力,逐步增强实际工程训练。

二、设计内容对一个有N个学生的班级,通过该系统实现对该班级学生基本信息进行录入、显示、修改、删除、保存等操作的管理。

三、设计方法结合C语言的有关知识,查阅资料,对班级档案管理系统的内容进行构思和设计,在MicrosoftVisualC++平台上完成设计,并进行调试。

目录第一章绪论 (5)第二章需求分析问题描述 (6)功能要求 (6)算法提示 (6)项目开发的目的 (7)第三章概要设计程序模块的组成 (8)班级档案管理系统 (8)各个程序的功能介绍 (9)系统结构图 (9)第四章模块设计分析程序的模块组成 (10)各个函数的主要功能 (10)系统的功能模块的划分 (10)总流程图 (12)功能流程图 (13)第五章测试存在的问题 (14)测试方案 (14)第六章使用说明书 (15)第七章总结 (17)附录A参考文献 (18)B源程代码 (20)第一章绪论班级档案管理系统有六种功能,把这六种功能做成六个子函数。

在主函数中设计一个菜单对这六个子函数进行管理,来实现对整个系统的操作。

根据课题的要求,每个数据的结构应当包括:学号(char)、姓名(char)、性别(char)、年龄(int)、备注(char)。

对一个有N个学生的班级,通过该系统实现对该班级学生的基本信息的录入、显示、修改、删除、保存等操作的管理。

最后为了以后按照处理后的顺序保存到文件中。

第二章需求分析问题描述:对一个有N个学生的班级,通过该系统实现对该班级学生的基本信息进行录入、显示、修改、删除、保存等操作的管理。

功能要求:1、本系统采用一个包含N个数据的结构体数组,每个数据的结构应当包括:姓名、学号、性别、年龄、备注。

2、本系统显示这样的菜单:请选择系统功能项:A、学生基本信息录入B、学生基本信息显示C、学生基本信息保存D、学生基本信息删除E、学生基本信息修改F、学生基本信息查询(1)按学号查询(2)按姓名查询(3)按性别查询(4)按年龄查询G、退出系统3、执行一个具体的功能之后,程序将重新显示菜单。

4、将学生基本信息保存到文件中。

算法提示1、数据结构:结构体类型数组2、数据库结构:下表构成该系统的基本数据库。

项目开发Array的目的该系统是简单的班级档案管理系统,能够使老师了解到相应的信息。

是争对目前的现状,把管理人员从繁忙的数据统计中解脱出来,使其具有更多地精力去从事教务管理政策的而研究实施,教学计划的制定执行和教学质量的监督检查,从而全面提高教学质量,同时也减轻任课老师的负担,让其有更多的时间投入到教学和科研中,还有学生档案管理的重要性,以及当前的档案管理的现实,为了改善这种情况,使档案管理工作真正步入高效,健康的轨道从而促使我们开发了这个系统,以提高档案管理工作的效率和满足用户的基本需求为目的,实现档案管理。

第三章概要设计程序模块的组成主函数:voidmain()录入函数:voidGetInfo()显示函数:voidDisPlay()保存函数:voidSave()删除函数:voidDelect()修改函数:voidModfiy()查询函数:voidSearch()输出函数:voidprint()1.GetInfo()是录入函数,主要是录入学生的基本信息;2.DisPlay()是显示函数,就是把学生的基本信息显示在电脑上;3.Save()是保存函数,就是把学生基本信息保存下来;4.Delect()是删除函数,把不要的信息删除;5.Modfiy()是修改函数,修改错误的学生基本信息;6.Search()是查询函数,查询学生的基本信息;7.print()是输出函数,输出学生的基本信息。

班级档案管理系统3.用运行系统测试源程序代码。

第六章使用说明书按照菜单的提示进行选择,1表示学生信息的录入,先进行信息的录入完成后,按回车键会弹出弹出第二个界面,根据第二个界面进行选择。

2表示信息的显示。

3表示信息的保存。

4表示信息的删除。

5表示信息的修改。

6表示信息的查询。

7表示安全退出系统。

当保存好学生的基本信息的时候你可以通过3保存学生的信息,按4是删除,删除成功后再输入你的学号会显示该学生不存在,在按5时会显示要输入密码才能改变信息,按6时会弹出一个由四个选项组成的界面,有按1按学号查询、2按年龄查询、3按性别查询、4按姓名查询。

所以只要你根据菜单上操作是不难的,欢迎使用!第七章总结通过这次课程设计,我觉得自己的知识还远远不够,这次C语言课程设计的“班级档案管理系统”,通过不断调试与修改,最终还是完成了,虽然参考了许多资料,但是自己亲手完成的第一个课程设计,还是挺激动地。

这次课程设计充分运用了自己所学的东西,明白了自己的不足点,由于学艺不精,也遇到了不少麻烦,比如画E-R图时,各实体中关系的确定,由于对系统还不够了解而找不到一个准确的词来形容,总体规划材料太多,不易整理;相关数据库没有多注意,这次课程设计的重点只在对整个系统的总体思路设计。

通过这次设计让我明白了,只有通过自己动手才能真正学到东西。

书本知识固然重要,但只有把它运用于实际才会发现自己的不足和错误,才能改进,才能达到学习的最终目标。

以下是我总结出的一些经验:1.要对系统的功能做出详细的分析,并合理分解任务。

2.把分解出来的子任务,做成一个相对独立的模块。

3.在设计一个模块之前,要简单构想一下总界面的显示情况。

4.针对构想出来的界面进行程序的编写。

虽然我的课程设计存在许多问题,究其原因还是因为自己平时没认真学习,以后定会认真学习,学以致用。

附录:参考文献《C程序设计(第三版)》谭浩强着清华大学出版社《C语言程序设计实用指南》谭浩强着清华大学出版社《课程设计与上级指导》谭浩强着《课程设计与习题详解》葛日波着源程序:#include<>#include<>#include<>#include<>#defineN3ame,arr[i].no,&arr[i].age,&ch,&arr[i].sex,arr[i].bnote);}}voidDisplay(structstudent*arr,intn)ame,arr[i].no,arr[i].sex,arr[i].age,arr[i].bnote);}}voidSave(structstudent*arr,intn)o)){printf("infor:namenosexagebnote\n");printf("%12s%12s%12c%12d%12s\n",arr[i].name,arr[i].no,arr[i].sex,arr[i].age,arr[i].bnote);printf("pleaseinputinformation:\n");scanf("%s%s%c%c%d%s",arr[i].name,arr[i].no,&ch,&arr[i].sex,&arr [i].age,arr[i].bnote);Save(arr,n);flag=true;}}if(flag==false){printf("该学生不存在!:\n");}}voidDelete(structstudent*arr,intn)o)){strcpy(arr[i].name,"");strcpy(arr[i].no,"");strcpy(arr[i].bnote,"");arr[i].sex='';arr[i].age=0;Save(arr,n);flag=true;}}if(flag==true){printf("该学生已删除不存在!:\n");}}voidSearch(structstudent*arr,intn)o)){printf("%12s%12s%12c%12d%12s\n",arr[i].name,arr[i].no,arr[i].sex,arr[i].age,arr[i].bnote);flag=true;}}if(!flag){printf("该学生不存在.\n");}}break;case2:{charnum[10];printf("pleaseinputname:\n");scanf("%s",num);for(i=0;i<n;i++){if(!strcmp(num,arr[i].name)){printf("%12s%12s%12c%12d%12s",arr[i].name,arr[i].no,arr[i].sex,arr[i].age,arr[i].bnote);flag=true;}}if(!flag){printf("该学生不存在.\n");}}break;case3:{charch;printf("请输入性别:\n");ch=getch();for(i=0;i<n;i++){if(ch==arr[i].sex){printf("%12s%12s%12c%12d%12s\n",arr[i].name,arr[i].no,arr[i].sex,arr[i].age,arr[i].bnote);flag=true;}}if(!flag){printf("该学生不存在.\n");}}break;case4:{charnum_age;printf("请输入年龄:\n");scanf("%d",&num_age);for(i=0;i<n;i++){if(num_age==arr[i].age){printf("%12s%12s%12c%12d%12s\n",arr[i].name,arr[i].no,arr[i].sex,arr[i].age,arr[i].bnote);flag=true;}}if(!flag){printf("该学生不存在.\n");}}break;default:break;}}voidmain(){structstudentarr[N];intselect;print(false);scanf("%d",&select);while(0<select&&select<7){switch(select){case1:GetInfo(arr,N);print(true);break;case2:Display(arr,N);print(true);break;case3:Save(arr,N);print(true);break;case4:Delete(arr,N);print(true);break;case5:Modfiy(arr,N);print(true);break;case6:Search(arr,N);print(true);break;default:break;}printf("请选择:\n");scanf("%d",&select);}}。

相关主题