班级档案管理系统报告文档.docx

上传人:b****6 文档编号:7141889 上传时间:2023-01-21 格式:DOCX 页数:15 大小:108.66KB
下载 相关 举报
班级档案管理系统报告文档.docx_第1页
第1页 / 共15页
班级档案管理系统报告文档.docx_第2页
第2页 / 共15页
班级档案管理系统报告文档.docx_第3页
第3页 / 共15页
班级档案管理系统报告文档.docx_第4页
第4页 / 共15页
班级档案管理系统报告文档.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

班级档案管理系统报告文档.docx

《班级档案管理系统报告文档.docx》由会员分享,可在线阅读,更多相关《班级档案管理系统报告文档.docx(15页珍藏版)》请在冰豆网上搜索。

班级档案管理系统报告文档.docx

班级档案管理系统报告文档

 

班级档案管理系统报告文档

 

题目:

班级档案管理系统

一、设计任务与目标

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

功能要求:

(1)本系统采用一个包含N个数据的结构体数组,每个数据的结构应当包括:

学号、姓名、性别、年龄、备注。

(2)本系统显示这样的菜单:

请选择系统功能项:

a学生基本信息录入

b学生基本信息显示

c学生基本信息保存

d学生基本信息删除

e学生基本信息修改(要求先输入密码)

f学生基本信息查询

(1)按学号查询

(2)按姓名查询

(3)按性别查询

(4)按年龄查询

g.退出系统

(3)执行一个具体的功能之后,程序将重新显示菜单。

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

(5)进入系统之前要先输入密码。

二、方案设计与论证

主要采用结构体数组,经过scanf函数从键盘输入学生各种信息,每当修改学生信息时需要调用密码验证函数。

定义了一个文件指针,密码验证函数中,经过fopen打开已有文本文件,然后经过fgetc逐个读取该文件中的字符来实现。

退出系统时向学生信息文件中写入数据并关闭文件就实现了保存文件的功能。

 

三、程序框图或流程图,程序清单与调用关系

输入密码

输出”密码错误”

输出”信息录入

(1)退出系统(7)”

输出”请选择”输入”7”

结束

结束

输出”请选择”输入”1”

输出”显示

(2)保存(3)删除(4)修改(5)查询(6)”

输入”5”

输入密码

输出”该生不存在”

输出”修改信息,输入学号”

进行修改

输出”请选择”输入”2”

显示信息

输入”4”

输入学号?

输出”该生不存在”

进行删除

输出”请选择”

输入”2”

显示修改后的学生信息

输入”6”

输出”经过学号姓名性别年龄进行查询”

分别查询

NY

N

NY

 

四、全部源程序清单

#include

#include

#include

#include

#defineN3

structstudent

{

charname[10];

charno[10];

charsex;

intage;

charbnote[100];

};

voidprint(boolmenu)//打印基本信息

{

if(!

menu)

{

printf("学生基本信息录入,press1\n");

}

else

{

printf("学生基本信息显示,press2\n");

printf("学生基本信息保存,press3\n");

printf("学生基本信息删除,press4\n");

printf("学生基本信息修改,press5\n");

printf("学生基本信息查询,press6\n");

}

printf("退出学生信息系统,press7\n");

}

boolCheck(charpas[6])//密码验证

{

FILE*fp;//定义一个文件指针fp,建立一个字符文件

charch;

chara[7]={""};

inti=0;

if((fp=fopen("c:

\\密码.txt","r"))==NULL)//打开密码.txt

{

printf("文件打开失败!

\n");

exit(0);

}

ch=fgetc(fp);

while(ch!

=EOF&&i<6)

{

a[i]=ch;

ch=fgetc(fp);

i++;

}

a[6]='\0';

if(!

strcmp(pas,a))

{

returntrue;

}

else

{

printf("密码错误\n");

returnfalse;

}

fclose(fp);

}

voidGetInformation(structstudent*arr,intn)//学生基本信息录入

{

for(inti=0;i

{

printf("输入学生的基本信息:

namenosexagebnote\n");

scanf("%s%s%c%d%s",arr[i].name,arr[i].no,&arr[i].sex,&arr[i].age,arr[i].bnote);

}

}

voidDisplay(structstudent*arr,intn)//学生基本信息显示

{

printf("学生信息:

namenOsexagenote\n");

for(inti=0;i

{

printf("%5s%5s%5c%5d%5s\n",arr[i].name,arr[i].no,arr[i].sex,arr[i].age,arr[i].bnote);

}

}

voidSave(structstudent*arr,intn)//学生基本信息保存,保存在c:

\\student.txt

{

FILE*fp;

fp=fopen("c:

\\student.txt","w+");

if(fp==NULL)

{

printf("文件不存在!

\n");

exit(0);

}

fwrite(arr,sizeof(structstudent)*n,n,fp);

fclose(fp);

}

voidModfiy(structstudent*arr,intn)//学生基本信息修改

{

charnumber[10];

boolflag=false;

charpass[6];

printf("请输入密码:

\n");

scanf("%s",pass);

if(Check(pass))

{

printf("修改学生信息:

\n");

printf("请输入学号:

\n");

scanf("%s",number);

for(inti=0;i

{

if(!

strcmp(number,arr[i].no))

{

printf("学生信息:

namenosexagenote\n");

printf("%10s%10s%10c%10d%10s\n",arr[i].name,arr[i].no,

arr[i].sex,arr[i].age,arr[i].bnote);

printf("请输入学生信息:

\n");

scanf("%s%s%c%d%s",arr[i].name,arr[i].no,&arr[i].sex,&arr[i].age,arr[i].bnote);

Save(arr,n);

flag=true;

}

}

if(flag==false)

{

printf("该学生不存在!

\n");

}

}

}

voidDelete(structstudent*arr,intn)//学生基本信息删除

{

charnumber[10];

boolflag=false;

printf("删除学生信息:

\n");

printf("请输入学号:

\n");

scanf("%s",number);

for(inti=0;i

{

if(!

strcmp(number,arr[i].no))

{

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)//学生基本信息查询

{

inttemp,i;

boolflag=false;

printf("---------------经过学号查询,press1-------------\n");

printf("---------------经过姓名查询,press2-----------\n");

printf("---------------经过性别查询,press3------------\n");

printf("---------------经过年龄查询,press4------------\n");

printf("---------------退出,press5------------\n");

scanf("%d",&temp);

switch(temp)

{

case1:

//按照学号查询

{

charnum[10];

printf("请输入学号:

\n");

scanf("%s",num);

for(i=0;i

{

if(!

strcmp(num,arr[i].no))

{

printf("%10s%10s%10c%10d%10s\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("请输入姓名:

\n");

scanf("%s",num);

for(i=0;i

{

if(!

strcmp(num,arr[i].name))

{

printf("%10s%10s%10c%10d%10s",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");

//scanf("%c",&ch);

ch=getch();

for(i=0;i

{

if(ch==arr[i].sex)

{

printf("%10s%10s%10c%10d%10s\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

{

if(num_age==arr[i].age)

{

printf("%10s%10s%10c%10d%10s\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];

charps[6];

boolflag=false;

printf("请输入密码:

\n");

scanf("%s",ps);

flag=Check(ps);

if(flag)

{

intselect;

print(false);

scanf("%d",&select);

while(0

{

switch(select)

{

case1:

GetInformation(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);

}

}

}

五、程序运行的测试与分析

六、结论与心得

无论什么只有自己真的懂了,才能说出来个因此然。

整个过程充满了纠结,不过从各种资料中慢慢发现那是很容易的,思路也清楚了很多,最后做起来也挺容易。

七、参考资料

C语言课程设计(第三版)谭浩强著

八、致谢

谢谢,谢谢谭浩强老师。

谢谢XX老师

 

课程设计成绩评定表

对课程设计工作过程的简短介绍和自我评价

 

学生签名:

月日

(以下由评定小组教师填写)

质量评价指标(在相应栏目打√)

评价项目

评价质量

优秀

良好

一般

及格

不及格

工作量和态度

实验、计算可靠性

文字和图表质量

总体评价

评定成绩(百分制)

 

评定小组成员签名

月日

制定人:

王钲璇,苗雨审定人:

陈守孔

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 其它

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

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