您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > c语言班级档案管理系统
1设计目的全面熟悉、掌握C语言基本知识,掌握C程序设计中的顺序、分支、循环三种结构及数组、函数和c语言基本图形编程等方法,把编程和实际结合起来,增强对不同的问题运用和灵活选择合适的数据结构以及算法描述的本领,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用计算机解决实际问题的能力,养成提供文档资料的习惯和规范编程的思想,为以后在专业课程中应用计算机系统解决计算、分析、实验和设计等学习环节打下较扎实的基础。2任务概述对一个有N个学生的班级,通过该系统实现对该班级学生的基本信息进行录入、显示、修改、删除、保存等操作的管理。1、本系统采用一个包含N个数据的结构体数组,每个数据的结构应当包括:班号、学号、姓名、性别、年龄。2、本系统显示这样的菜单:请选择系统功能项:a.学生基本信息录入b.学生基本信息显示c.学生基本信息保存d.学生基本信息删除e.学生基本信息修改f.学生基本信息查询(按学号查询)g.添加学生基本信息g.退出系统3、执行一个具体的功能之后,程序将重新显示菜单。4、将学生基本信息保存到文件中。5、进入系统之前要先输入密码。6、数据结构:结构体类型数组7、数据库结构:下表构成该系统的基本数据库。班号:charclaNum学号:charstuNum姓名:charname性别:charsex年龄:intage23模块划分班级档案管理系统包括:a.学生基本信息录入、b.学生基本信息显示、c.学生基本信息保存、d.学生基本信息删除、e.学生基本信息修改、f.学生基本信息查询(按学号查询)、g.添加学生基本信息、g.退出系统8个功能,功能模块图如图3所示。图3功能模块图4主要函数说明及其N-S图班级档案管理系统学生基本信息录入学生基本信息显示学生基本信息保存学生基本信息删除学生基本信息修改学生基本信息查询学生基本信息添加退出系统按学号查询退出3主函数:voidmain();程序的入口函数;录入函数:voidinput();录入学生的基本信息;显示函数:voidshow();显示出学生的基本信息删除函数:voiddelete();删除不用的信息;修改函数:voidModfiy();修改错误的学生信息;查询函数:voidquery();查询学生基本信息;添加函数:voidadd();添加新同学的信息;(1)输入密码进入主菜单,如图4-1所示。图4-1进入主菜单(2)录入学生基本信息,如图4-2所示。输入录入人数:intn;i有0到n-1执行n次循环结束图4-2录入学生基本信息输入班号:claNum;输入学号:stuNum;输入姓名:name;输入性别:sex;输入年龄:age;输入密码:str1;真str1=str2;假结束Returnmuen();printf(“密码错误!”);4(3)显示学生基本系信息,如图4-3所示。图4-3显示学生基本系信息(4)保存学生基本信息,如图4-4所示。图4-4保存学生基本信息输入学生学号:student[i].stuNum;i由0到n-1执行n次循环结束输出班号:claNum;输出学号:stuNum;输出姓名:name;输出性别:sex;输出年龄:age;创建一个文件夹:fp;0strcmp(number,student[i].stuNum)1Save()printf(“文件不存在!”);结束5(5)查询学生基本信息,如图4-5所示。图4-5查询学生基本信息(6)修改学生错误信息,如图4-6所示。图4-6修改学生基本信息(7)删除学生基本信息,如图4-7所示。输入学生学号:fp;i由0到n-1执行n次循环结束0strcmp(n,student[i].stuNum)1printf(“班号:”student[i].clsNum);printf(该学生不存在!);printf(学号:,student[i].stuNum)printf(姓名:,student[i].name);printf(性别:,student[i].sex);printf(年龄:,student[i].age);输入学生学号:student[i].stuNumi由0到n-1执行n次循环1strcmp(n,student[i].stuNum)0修改学生错误信息printf(该学生不存在!);输入学生学号:student[i].stuNum;结束1strcmp(number,student[i].stuNum)0strcpy(student[i].clsNum,);strcpy(student[i].stuNum,);strcpy(student[i].name,);printf(该学生不存在!);strcpy(student[i].sex,);student[i].age=0;6图4-7删除学生基本信息5程序运行数据及其结果用户使用说明书:(1)输入密码进入主菜单,程序截图如图5-1所示。图5-1主菜单(2)录入学生基本信息界面,程序截图如图5-2所示。图5-2录入界面(3)显示学生基本信息,程序截图如图5-3所示。7图5-3显示界面(4)删除学生基本信息,程序截图如图5-4所示。图5-4删除界面(5)修改学生基本信息,程序截图如图5-5所示。8图5-5修改界面(6)查询学生基本信息,程序截图如图5-6所示。图5-6查询界面(7)添加学生基本信息,程序截图如图5-7所示。9图5-7添加界面6课程设计心得通过这次课程设计我学到了许多感觉自己的知识的不够这次数据库课程设计的“班级档案管理系统”,通过在机房的不断调试和修改其中错误加上验证和测试使得对该系统的运用已经能够已经得到了充分的应用了。去图书馆查阅了一些书集和上网搜索一部分资粗略设计出该系统。总体上来说,这次课程设计还是比较成功的,充分运用了所学的软工程设计,出N-S图,从整体规划出系统的运行环境和系统实现的功能。当然,由于学艺不精,在课程设计的过程中也碰到的一些问题。其中,画N-S图时,各实体中的关系的确定,由于对系统还不够了解而找不到一个准确的词来形容;总体规划,材料太多,不易整理;相关数据库技术方面没有多注意,这次课程设计的重点只在对整个系统的总体思路设计。其实这些通过最近的课程设计觉得最重要一点就是:我们一定要自己动手,这样才能真正的学到东西。书本知识固然重要,但我们更要学会将书本知识应用到实际中才会发现错误,也才能改进,才能达到学习的最终目的。但我出总结出了一点点的经验如下:1、要对系统的功能和要求做出详细的分析,并合理分解任务。2、把分解出来的子任务,做给一个相对独立的模块。3、在设计一个模块之前,要简单构想一下总界面的显视情况。4、针对构想出来的界面进行程序的编写。虽然我的课程设计师存在许多的问题,究其原因还是因为自己平时没有认真听老师讲课,但是我还是希望老师能够白忙中抽空看看我的课程设计的报告,我将非常感谢!10附录:#includestdio.h#includestring.h#includestdlib.h#defineN100structStudent{charclsNum[20];charstuNum[20];charname[10];charsex[5];11intage;};structStudentstudent[N];intn;voidinput();voidshow();voidquery();voidadd();voidDelete();voidsave();voidmuen();voidModfiy();voidcode_M();voidinput(){printf(***********************学生基本信息录入***********************);system(cls);inti;printf(\t\t\t\t*请输入需要添加的人数:[]\b\b);scanf(%d,&n);for(i=0;in;i++){system(cls);printf(*********请输入第%d个同学的信息:,i+1);printf(\t\t\t\t\n班号:);scanf(%s,&student[i].clsNum);printf(\t\t\t\t\n学号:);scanf(%s,&student[i].stuNum);12printf(\t\t\t\t\n姓名:);scanf(%s,&student[i].name);printf(\t\t\t\t\n性别:);scanf(%s,&student[i].sex);getchar();printf(\t\t\t\t\n年龄:);scanf(%d,&student[i].age);getchar();}save();puts(按任意键返回主菜单......);muen();}voidadd(){inti;intn1;printf(***********************请输入新同学的信息:***********************\n);printf(\t\t\t\t*请输入需要添加的人数:[]\b\b);scanf(%d,&n1);for(i=n;in+n1;i++){printf(\t请输入第%d个新同学的信息:\n,n+n1);printf(\t\t\t\t\n班号:);scanf(%s,&student[i].clsNum);printf(\t\t\t\t\n学号:);scanf(%s,&student[i].stuNum);13printf(\t\t\t\t\n姓名:);scanf(%s,&student[i].name);printf(\t\t\t\t\n性别:);scanf(%s,&student[i].sex);getchar();printf(\t\t\t\t\n年龄:);scanf(%d,&student[i].age);getchar();}n=n+n1;printf(按任意键返回主菜单......);muen();}voidshow(){printf(***********************学生基本信息如下:***********************\n);inti=0;for(i=0;in;i++){printf(第%d个同学的信息\n);printf(\t\t\t\t*班号:%s\n,student[i].clsNum);printf(\t\t\t\t*学号:%s\n,student[i].stuNum);printf(\t\t\t\t*姓名:%s\n,student[i].name);printf(\t\t\t\t*性别:%s\n,student[i].sex);printf(\t\t\t\t*年龄:%d\n,student[i].age);}puts(按任意键返回主菜单......);getchar();14getchar();muen();}voidsave(){FILE*fp;fp=fopen(d:\\student.txt,wb);if(fp==NULL){printf(*****************文件不存在!****************\n);exit(0);}fwrite(student,sizeof(structStudent)*n,n,fp);fclose(fp);}voidload(){FILE*fp;fp=fopen(d:\\student.txt,rb);if(fp==NULL){printf(****************文件不存在!****************\n);exit(0);}fread(student,sizeof(structStudent)*n,n,fp);fclose(fp);}15voidDelete(){printf(************************学生基本信息删除***********************\n);inti=0;charnumber[10];intflag=0;printf(*
本文标题:c语言班级档案管理系统
链接地址:https://www.777doc.com/doc-2066923 .html