c语言班级档案管理系统文档格式.docx
《c语言班级档案管理系统文档格式.docx》由会员分享,可在线阅读,更多相关《c语言班级档案管理系统文档格式.docx(23页珍藏版)》请在冰点文库上搜索。
![c语言班级档案管理系统文档格式.docx](https://file1.bingdoc.com/fileroot1/2023-4/30/f28a5814-58ba-43c7-b689-2849ddcd18b6/f28a5814-58ba-43c7-b689-2849ddcd18b61.gif)
数据结构:
结构体类型数组
7、
数据库结构:
下表构成该系统的基本数据库。
班号:
charclaNum
学号:
charstuNum
姓名:
charname
性别:
charsex
年龄:
intage
3模块划分
班级档案管理系统包括:
学生基本信息录入、
、c.
学生基本信息保存、
、e.
学生基本信息修改、
(按学号查询)、
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<
stdio.h>
string.h>
stdlib.h>
#defineN100
structStudent
{
charclsNum[20];
charstuNum[20];
charname[10];
charsex[5];
intage;
};
structStudentstudent[N];
voidDelete();
voidsave();
voidmuen();
voidcode_M();
voidinput()
printf("
***********************学生基本信息录入***********************"
);
system("
cls"
inti;
\t\t\t\t*请输入需要添加的人数:
["
"
]\b\b"
scanf("
%d"
&
n);
for(i=0;
i<
n;
i++)
{
system("
printf("
*********请输入第%d个同学的信息:
"
i+1);
\t\t\t\t\n班号:
scanf("
%s"
student[i].clsNum);
\t\t\t\t\n学号:
student[i].stuNum);
\t\t\t\t\n姓名:
student[i].name);
\t\t\t\t\n性别:
student[i].sex);
getchar();
\t\t\t\t\n年龄:
student[i].age);
}
save();
puts("
按任意键返回主菜单......"
muen();
}
voidadd()
intn1;
***********************请输入新同学的信息:
***********************\n"
n1);
for(i=n;
n+n1;
\t请输入第%d个新同学的信息:
\n"
n+n1);
n=n+n1;
voidshow()
***********************学生基本信息如下:
inti=0;
第%d个同学的信息\n"
\t\t\t\t*班号:
%s\n"
student[i].clsNum);
\t\t\t\t*学号:
student[i].stuNum);
\t\t\t\t*姓名:
student[i].name);
\t\t\t\t*性别:
student[i].sex);
\t\t\t\t*年龄:
%d\n"
student[i].age);
getchar();
voidsave()
FILE*fp;
fp=fopen("
d:
\\student.txt"
"
wb"
if(fp==NULL)
*****************文件不存在!
****************\n"
exit(0);
fwrite(student,sizeof(structStudent)*n,n,fp);
fclose(fp);
voidload()
rb"
****************文件不存在!
fread(student,sizeof(structStudent)*n,n,fp);
voidDelete(){
************************学生基本信息删除***********************\n"
);
charnumber[10];
intflag=0;
**************删除信息:
**************请输入学号:
number);
=n;
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)
****************该学生不存在!
voidout()
code_M();
voidmuen()
\n\n\t\t\t★★★★★★★★欢迎来到班级档案管理系统★★★★★★★★\t\t\t\n\n"
\t\t\t\t\t学生基本信息录入press1\t\t\t\t"
\t\t\t\t\t学生基本信息显示press2\t\t\t\t"
\t\t\t\t\t学生基本信息保存press3\t\t\t\t"
\t\t\t\t\t学生基本信息删除press4\t\t\t\t"
\t\t\t\t\t学生基本信息修改press5\t\t\t\t"
puts("
\t\t\t\t\t学生基本信息查询press6\t\t\t\t"
\t\t\t\t\t学生基本信息添加press7\t\t\t\t"
\t\t\t\t\t退出系统press8\t\t\t\t"
*********************************************************************************************************"
请选择:
inta;
a);
switch(a)
case1:
input();
break;
case2:
show();
case3:
save();
case4:
Delete();
case5:
Modfiy();
case6:
query();
case7:
add();
case8:
out();
voidquery()
inttemp;
\t\t\t\t通过学号查询press1\t\t\t\t\n"
\t\t\t\t退出press2\t\t\t\t\n"
temp);
switch(temp)
case1:
{
intflag=0;
charn[10];
printf("
请输入学号:
scanf("
for(i=0;
N;
{
if(strcmp(n,student[i].stuNum)==0)
{
printf("
\t\t\t\t班号:
%s,\n"
\t\t\t\t学号:
\t\t\t\t姓名:
\t\t\t\t性别:
\t\t\t\t年龄:
%d,\n"
flag=1;
}
}
if(flag==0)
printf("
\t\t\t\t该学生不存在!
}
break;
default:
break;
}
voidModfiy()
charn[10];
intflag=0;
\t\t\t\t*修改学生信息:
\t\t\t\t*请输入学生学号:
inti;
for(i=0;
if(strcmp(n,student[i].stuNum)==0)
学生基本信息如下:
班号:
学号:
姓名:
性别:
年龄:
请输入学生信息:
\n班号:
\n学号:
\n姓名:
\n性别:
\n年龄:
save();
flag=1;
该学生不存在!
voidcode_M()
请输入密码:
charstr1[6]="
123"
;
charstr2[6];
str2);
if(strcmp(str1,str2)!
=0)
输入的密码错误!
}else{
muen();
voidmain()