版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、#include #include #include struct shengriint year;int month;int day;struct studentchar name40;char sno20;char sid20;struct shengri birth;int address200;struct student *stu=NULL; int current=0;int total=0;void insert() if(stu=NULL) stu=(struct student *)malloc(total*sizeof(struct student); if(current
2、=total) printf(对不起,由于人数已满,不能添加新学生信息n);return;printf(请输入学生姓名: );scanf(%s,);printf(请输入学生学号: );scanf(%s,stucurrent.sno);printf(请输入学生身份证号码: );scanf(%s,stucurrent.sid); printf(请输入学生出生日期格式(年-月-日): );scanf( %d-%d-%d,&stucurrent.birth.year,&stucurrent.birth.month,&stucurrent.birth.day);printf
3、(请输入学生家庭地址: );scanf(%s,stucurrent.address);current+;return;void query()char name40; char xuehao40;int i,item,flag;printf(n);printf(1.按学号查询n);printf(2.按姓名查询n);printf(3.退出本菜单n);printf(n);while(1)printf(n); printf(请选择子菜单编号:); scanf(%d,&item); flag=0;switch(item)case 1: printf(请输入要查询的学生的学号:); scanf(%s,x
4、uehao); for(i=0;icurrent;i+) if(strcmp(stui.sno,xuehao)=0) flag=1; printf(学生信息如下n); printf(姓名: %sn,); printf(学号: %sn,stui.sno); printf(身份证号: %sn,stui.sid); printf(出生日期: %d-%d-%dn,stui.birth.year,stui.birth.month,stui.birth.day); printf(家庭地址: %sn,stui.address);return;if(flag=0)printf(n);prin
5、tf( 警告:!学号为%s的学生不存在!,xuehao);break;break;case 2: printf(请输入要查询的学生的姓名:); scanf(%s,name); for(i=0;icurrent;i+) if(strcmp(,name)=0) flag=1; printf(学生信息如下n); printf(姓名: %sn,); printf(学号: %sn,stui.sno); printf(身份证号: %sn,stui.sid); printf(出生日期: %d-%d-%dn,stui.birth.year,stui.birth.month,
6、stui.birth.day); printf(家庭地址: %sn,stui.address);return;if(flag=0)printf(n);printf( 警告:!姓名为%s学生不存在!,name);break;case 3:return;default:printf(!非法输入,请在1-3之间选择!n); void update()char name40;int i;printf(请输入要修改的学生姓名: );scanf(%s,name);for(i=0;i current;i+)if(strcmp(,name)=0) printf(请输入修改后的学生姓名: );
7、scanf(%s,);printf(n);printf(修改前的学生学号为: );printf(%s,stui.sno);printf(n);printf(请输入修改后的学生学号: );scanf(%s,stui.sno);printf(n); printf(修改前的学生身份证号为: );printf(%s,stui.sid);printf(n);printf(请输入修改后的学生身份证号: );scanf(%s,stui.sid);printf(n); printf(修改前的学生出生日期,格式(年-月-日):);printf(%d-%d-%d,stui.birth.year,
8、stui.birth.month,stui.birth.day);printf(n); printf(请输入修改后的学生出生日期,格式(年-月-日):); scanf(%d-%d-%d,&stui.birth.year,&stui.birth.month,&stui.birth.day);printf(n);printf(修改前的家庭住址为: ); printf(%s,stui.address);printf(n);printf(请输入修改后的家庭地址: ); scanf(%s,stui.address);return;printf( !该学生不存在,请重新选择!n);return;void
9、deiete()char name40;int i,k;char a;printf(请输入要删除的学生姓名: );scanf(%s,name);printf(n); for(i=0;i current;i+)if(strcmp(,name)=0) printf(要删除的学生姓名为:%sn,);printf(n); printf(你确定要删除吗?继续请按y,放弃请按nn);printf(n);printf(请选择:);scanf(%s,&a);if (a=y|a=Y)for(k=i;kcurrent;k+)strcpy(,stuk+1.nam
10、e); break;if(a=n|a=N)printf(放弃删除!); return; printf(!非法输入!);return;if(i=current)printf(!警告:姓名为%s的学生不存在!nn,name);elseprintf(该学生已成功删除!n);current-; return;void list()int i;printf(一共有%d个学生信息n,current);printf(n);printf(学生信息列表为:n);printf(n);for(i=0;icurrent;i+) printf(第%d个学生信息如下:n,i+1); printf( 姓名: %sn,stu
11、); printf( 学号: %sn,stui.sno); printf( 身份证号码: %sn,stui.sid); printf( 出生日期:%d-%d-%dn,stui.birth.year,stui.birth.month,stui.birth.day); printf( 地址:%sn,stui.address); printf(n); return;void save()int count;FILE*fs;fs=fopen(studentdata.dat,wb);if(fs=NULL)printf(不能打开文件n);return;count=fwrite(stu,size
12、of(struct student),current,fs);fclose(fs);if(count!=current)printf(保存失败n);return;printf(保存成功!n);return;void load()FILE *fs; int count=0; int succ=0; fs=fopen(studentdata.dat,rb); if(fs=NULL) printf(不能打开文件!n); return; succ=fseek(fs,0,2); if(succ!=0) printf(文件操作失败!n); return; count=ftell(fs); fseek(fs
13、,0,0); current=count/sizeof(struct student); stu=(struct student *)malloc(total*sizeof(struct student); count=fread(stu,sizeof(struct student),current,fs); fclose(fs); if(count!=current) printf(读取文件失败n); return; printf(读取文件成功n); return; void main()int choice;printf( n尊敬的用户您好,欢迎使用学生信息管理系统n); printf(n
14、 1.进入系统后,先按“7”加载学生信息,再查询;n); printf(n 2.按照菜单提示输入数字代号;n); printf(n 3.增加学生信息后,切记保存按“6”;n); printf(n 4.谢谢您的使用!n);printf(n);printf(n);printf(nt *学*生*信*息*管*理*系*统*n);printf(n);printf(n); printf( 主编:计算机应用班:第五组作品n); printf(n); printf( 由胡磊,李文娟,冉琼,梁凯华,马立虎共同参与完成n); printf(n); printf(请您输入要录入的学生总人数:); scanf(%d,&
15、total);while(1)printf(-); printf( -); printf( *学生信息管理系统程序功能*n);printf( -n);printf(n); printf( 1: -录 入 学 生 信 息- n); printf( 2: -查 询 学 生 信 息- n); printf( 3: -修 改 学 生 信 息- n); printf( 4: -删 除 学 生 信 息- n); printf( 5: -列 出 学 生 信 息- n); printf( 6: -保 存 学 生 信 息- n); printf( 7: -加 载 学 生 信 息- n); printf( 0: -退 出 程序 - n); printf(-n);printf(nn); printf( 请选择:);sca
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医疗质量控制中心工作制度(3篇)
- 职业认知能力题目及答案
- AI在职业健康安全技术中的应用
- 2026特种设备安全管理A证全真模拟考试试卷(完整版)
- 2026年北师大版小学数学五年级下册期末综合测试卷及答案
- 网络信息安全基础(AIGC版)随堂前测练习题及参考答案 项目5-任务3-前测练习-单选题5
- C语言程序设计课件 第5章 函数
- CPU设计实践教程-从数字电路到计算机组成 课件 第2章 Minisys实验板介绍
- 2026妇产科医生面试题及答案
- 2026半导体设备行业面试题及答案
- 2025江苏省连云港市属国有企业选聘生招录32人笔试历年参考题库附带答案详解
- 2025年交通运输概论考试试题及答案
- 2026春青岛版三年级科学下册(全册)各单元知识点复习要点梳理
- 青岛科技大学2026年综合评价招生《笔试 + 面试》模拟试题及参考答案
- GD弹性混凝土无缝连接技术-拼缝180802
- GB/T 17824.3-2026规模猪场环境参数及环境管理技术规范
- 2025浙江金华市武义供销农贸城招聘6人笔试历年常考点试题专练附带答案详解
- GB/T 15000.4-2026标准样品工作导则第4部分:证书、标签和附带文件的内容
- 医疗设备维修保养及应急预案
- 分子诊断设备技师精准操作能力标准
- 工厂搬迁技术方案
评论
0/150
提交评论