c语言班级档案管理系统word文档良心出品.docx
- 文档编号:4639086
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:20
- 大小:254.32KB
c语言班级档案管理系统word文档良心出品.docx
《c语言班级档案管理系统word文档良心出品.docx》由会员分享,可在线阅读,更多相关《c语言班级档案管理系统word文档良心出品.docx(20页珍藏版)》请在冰豆网上搜索。
c语言班级档案管理系统word文档良心出品
设计目的
全面熟悉、掌握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
年龄:
intage
3模块划分
班级档案管理系统包括:
a. 学生基本信息录入、 b. 学生基本信息显示 、c. 学生基本信息保存、 d. 学生基本信息删除 、e. 学生基本信息修改、 f. 学生基本信息查询 (按学号查询)、 g.添加学生基本信息、g. 退出系统 8个功能,功能模块图如图3所示。
图3功能模块图
4主要函数说明及其N-S图
主函数:
voidmain();程序的入口函数;
录入函数:
voidinput();录入学生的基本信息;
显示函数:
voidshow();显示出学生的基本信息
删除函数:
voiddelete();删除不用的信息;
修改函数:
voidModfiy();修改错误的学生信息;
查询函数:
voidquery();查询学生基本信息;
添加函数:
voidadd();添加新同学的信息;
(1)输入密码进入主菜单,如图4-1所示。
图4-1进入主菜单
(2)录入学生基本信息,如图4-2所示。
输入录入人数:
intn;
i有0到n-1执行n次循环
结束
图4-2录入学生基本信息
(3)显示学生基本系信息,如图4-3所示。
图4-3显示学生基本系信息
(4)保存学生基本信息,如图4-4所示。
图4-4保存学生基本信息
(5)查询学生基本信息,如图4-5所示。
图4-5查询学生基本信息
(6)修改学生错误信息,如图4-6所示。
图4-6修改学生基本信息
(7)删除学生基本信息,如图4-7所示。
图4-7删除学生基本信息
5程序运行数据及其结果
用户使用说明书:
(1)输入密码进入主菜单,程序截图如图5-1所示。
图5-1主菜单
(2)录入学生基本信息界面,程序截图如图5-2所示。
图5-2录入界面
(3)显示学生基本信息,程序截图如图5-3所示。
图5-3显示界面
(4)删除学生基本信息,程序截图如图5-4所示。
图5-4删除界面
(5)修改学生基本信息,程序截图如图5-5所示。
图5-5修改界面
(6)查询学生基本信息,程序截图如图5-6所示。
图5-6查询界面
(7)添加学生基本信息,程序截图如图5-7所示。
图5-7添加界面
6课程设计心得
通过这次课程设计我学到了许多感觉自己的知识的不够 这次数据库课程设计的“班级档案管理系
统”,通过在机房的不断调试和修改其中 错误加上验证和测试使得对该系统的运用已经能够已经得到了
充分的应用了。
去图书馆查阅了一些书集和上网搜索一部分资粗略设计出该系统。
总体上来说,这次课程设计还是比较成功的,充分运用了所学的软工程设计, 出N-S图,从整体
规划出系统的运行环境和系统实现的功能。
当然,由于学艺不精,在课程设计的过程中也碰到的一些问
题。
其中,画N-S图时,各实体中的关系的确定,由于对系统还不够了解而找不到一个准确的词来形容;
总体规划,材料太多,不易整理;相关数据库技术方面没有多注意,这次课程设计的重点只在对整个系
统的总体思路设计。
其实这些通过最近的课程设计觉得最重要一点就是:
我们一定要自己动手,这样才能真正的学到东
西。
书本知识固然重要,但我们更要学会将书本知识应用到实际中才会发现错误,也才能改进,才能达
到学习的最终目的。
但我出总结出了一点点的经验如下:
1、要对系统的功能和要求做出详细的分析,并合理分解任务。
2、把分解出来的子任务,做给一个相对独立的模块。
3、在设计一个模块之前,要简单构想一下总界面的显视情况。
4、针对构想出来的界面进行程序的编写。
虽然我的课程设计师存在许多的问题,究其原因还是因为自己平时没有认真听老师讲课,但是我还
是希望老师能够白忙中抽空看看我的课程设计的报告,我将非常感谢!
附录:
#include
#include
#include
#defineN100
structStudent
{
charclsNum[20];
charstuNum[20];
charname[10];
charsex[5];
intage;
};
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;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); printf("\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;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); printf("\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;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(); getchar(); 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); } voidDelete(){ printf("************************学生基本信息删除***********************\n"); inti=0; charnumber[10]; intflag=0; printf("**************删除信息: \n"); printf("**************请输入学号: "); scanf("%s",number); for(i=0;i<=n;i++) { if(strcmp(number,student[i].stuNum)==0) { strcpy(student[i].clsNum,""); strcpy(student[i].stuNum,""); strcpy(student[i].name,""); strcpy(student[i].sex,""); student[i].age=0; save(); flag=1; } show(); } if(flag==0) { printf("****************该学生不存在! ****************\n"); printf("按任意键返回主菜单......"); } getchar(); muen(); } voidout() { system("cls"); code_M(); } voidmuen() { system("cls"); puts("\n\n\t\t\t★★★★★★★★欢迎来到班级档案管理系统★★★★★★★★\t\t\t\n\n"); puts("\t\t\t\t\t学生基本信息录入press1\t\t\t\t"); puts("\t\t\t\t\t学生基本信息显示press2\t\t\t\t"); puts("\t\t\t\t\t学生基本信息保存press3\t\t\t\t"); puts("\t\t\t\t\t学生基本信息删除press4\t\t\t\t"); puts("\t\t\t\t\t学生基本信息修改press5\t\t\t\t"); puts("\t\t\t\t\t学生基本信息查询press6\t\t\t\t"); puts("\t\t\t\t\t学生基本信息添加press7\t\t\t\t"); puts("\t\t\t\t\t退出系统press8\t\t\t\t"); puts("*********************************************************************************************************"); puts("请选择: "); inta; scanf("%d",&a); switch(a) { case1: input();break; case2: show();break; case3: save();break; case4: Delete();break; case5: Modfiy();break; case6: query();break; case7: add();break; case8: out();break; } } voidquery() { inttemp; inti; printf("\t\t\t\t通过学号查询press1\t\t\t\t\n"); printf("\t\t\t\t退出press2\t\t\t\t\n"); printf("请选择: \n"); scanf("%d",&temp); switch(temp) { case1: { intflag=0; charn[10]; printf("请输入学号: \n"); scanf("%s",&n); for(i=0;i { if(strcmp(n,student[i].stuNum)==0) { 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); printf("请选择: \n"); flag=1; } } if(flag==0) { printf("\t\t\t\t该学生不存在! \n"); } } break; default: break; } getchar(); getchar(); muen(); } voidModfiy() { charn[10]; intflag=0; printf("\t\t\t\t*修改学生信息: \n"); printf("\t\t\t\t*请输入学生学号: "); scanf("%s",&n); inti; for(i=0;i { if(strcmp(n,student[i].stuNum)==0) { printf("学生基本信息如下: \n"); printf("班号: %s\n",student[i].clsNum); printf("学号: %s\n",student[i].stuNum); printf("姓名: %s\n",student[i].name); printf("性别: %s\n",student[i].sex); printf("年龄: %d\n",student[i].age); printf("请输入学生信息: \n"); printf("\n班号: "); scanf("%s",&student[i].clsNum); printf("\n学号: "); scanf("%s",&student[i].stuNum); printf("\n姓名: "); scanf("%s",&student[i].name); printf("\n性别: "); scanf("%s",&student[i].sex); getchar(); printf("\n年龄: "); scanf("%d",&student[i].age); getchar(); save(); flag=1; } } if(flag==0) { printf("该学生不存在! \n"); } printf("按任意键返回主菜单......"); muen(); } voidcode_M() { puts("请输入密码: "); charstr1[6]="123"; charstr2[6]; scanf("%s",str2); if(strcmp(str1,str2)! =0) { puts("输入的密码错误! "); }else{ muen(); } } voidmain() { code_M(); }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 班级 档案管理系统 word 文档 良心 出品