c语言课程设计学生档案管理系统Word格式文档下载.docx
- 文档编号:20207281
- 上传时间:2023-01-18
- 格式:DOCX
- 页数:12
- 大小:77.28KB
c语言课程设计学生档案管理系统Word格式文档下载.docx
《c语言课程设计学生档案管理系统Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《c语言课程设计学生档案管理系统Word格式文档下载.docx(12页珍藏版)》请在冰豆网上搜索。
按退格键创建文件模块(独立函数):
NOYES删除信息模块(独立函数):
不相同相同显示浏览信息模块(独立函数)查找学生信息模块(独立函数):
返回主程序程序清单与运行结果程序清单与运行结果#include#include#include#includestructbirthintyear,month,day;
structstudentintnumber,age,tel10;
charname10,sex,address20,E_mail20;
structbirthbirthday;
structstudent*link;
voidshow()printf(请输入数字加回车键进行选择:
n);
printf(1、学生信息录入功能(学生信息用文件保存)输入n);
printf(2、学生信息浏览功能输出n);
printf(3、学生信息查询功能按学号查询、按姓名查询n);
printf(4、学生信息的删除与修改(可选项)n);
printf(按其他任意键加回车退出程序n);
*创建文件夹并存入信息模块:
*voidcredit(intn)FILE*fp;
charfpname20;
structstudent*head,*next,*end;
inti;
printf(请输入用于存放文件的文件路劲及文件名:
);
scanf(%s,fpname);
getchar();
fp=fopen(fpname,w+);
head=(structstudent*)malloc(sizeof(structstudent);
printf(请输入学生学号姓名性别出生年月日地址电话e_mail:
scanf(%d%s%c%d%d%d%s%s%s,&
head-number,head-name,&
head-sex,&
(*head).,&
(*head).,head-address,head-tel,head-E_mail);
fprintf(fp,%d%s%c%d%d%d%s%s%s,head-number,head-name,head-sex,(*head).,(*head).,(*head).,head-address,head-tel,head-E_mail);
end=head;
for(i=1;
inumber,next-name,&
next-sex,&
(*next).,&
(*next).,next-address,next-tel,next-E_mail);
fprintf(fp,%d%s%c%d%d%d%s%s%s,next-number,next-name,next-sex,(*next).,(*next).,(*next).,next-address,next-tel,next-E_mail);
end-link=next;
end=next;
end-link=NULL;
fclose(fp);
*浏览信息模块:
*voidshow2(intn)FILE*fp;
structstudent*head;
printf(请输入存放信息的文件路径以及文件名:
gets(fpname);
fp=fopen(fpname,r+);
for(i=0;
inumber,head-name,&
printf(%d%s%d%d%d%d%s%s%s,&
head-number,head-name,head-sex,(*head).,(*head).,(*head).,head-address,head-tel,head-E_mail);
*按学号查找学生信息模块:
*intsearch1(intn)inti,checkname;
FILE*fp;
printf(请输入要查询信息的学生学号:
scanf(%d,&
checkname);
if(checkname=head-number)printf(%d%s%c%d%d%d%s%s%sn,head-number,head-name,head-sex,(*head).,(*head).,(*head).,head-address,head-tel,head-E_mail);
return
(1);
printf(未找到);
*按姓名查找学生信息模块:
*voidsearch2(intn)inti;
charfpname20,checkname10;
printf(请输入要查询信息的学生姓名:
scanf(%s,checkname);
if(strcmp(checkname,head-name)=0)printf(%d%s%c%d%d%d%s%s%s,head-number,head-name,head-sex,(*head).,(*head).,(*head).,head-address,head-tel,head-E_mail);
printf(未找到n);
*删除或修改文件信息模块:
*intmost(n)FILE*fp;
charget;
structstudent*ans500;
charcheckname10;
ans0=(structstudent*)malloc(sizeof(structstudent);
fscanf(fp,%d%s%c%d%d%d%s%s%s,&
ans0-number,ans0-name,&
ans0-sex,&
(*ans0).,&
(*ans0).,ans0-address,ans0-tel,ans0-E_mail);
inumber,ansi-name,&
ansi-sex,&
(*ansi).,&
(*ansi).,ansi-address,ansi-tel,ansi-E_mail);
ansi-1-link=ansi;
ansi-link=NULL;
printf(如果想修改信息请输入1加回车键,想删除信息输入2加回车键:
get=getchar();
if(get=1)printf(请输入要修改信息的学生姓名:
iname)=0)printf(请输入学生新信息学号姓名性别出生年月日地址电话e_mail:
ansi-number,ansi-name,&
if(get=2)printf(请输入要删除的学生姓名:
iname)=0)ansi-1-link=ansi-link;
n-;
break;
inumber,ansi-name,ansi-sex,(*ansi).,(*ansi).,(*ansi).,ansi-address,ansi-tel,ansi-E_mail);
return(n);
*主函数模块*voidmain()charget,get2;
intn;
while
(1)show();
switch(get)case1:
printf(请输入学生人数:
credit(n);
case2:
show2(n);
case3:
printf(按学号查找请输入1加回车键,按姓名查询请输入2加回车键:
get2=getchar();
if(get2=1)search1(n);
if(get2=2)search2(n);
case4:
n=most(n);
if(get!
=1&
get!
=2&
=3&
=4)break;
总结总结该程序主要使用结构体与结构化程序的设计,调用文件函数,设计函数时保持头脑思路清晰,有条理,保持各功能独立的函数来实现,需要对程序能熟练使用与掌握,我的函数侧重对单链表的使用,同时侧重文件运用时文件流动时文件信息不会流失。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 学生 档案管理系统
![提示](https://static.bdocx.com/images/bang_tan.gif)