学生信息管理系统C语言代码.doc

上传人:李医生 文档编号:7195949 上传时间:2020-11-05 格式:DOC 页数:8 大小:32.51KB
返回 下载 相关 举报
学生信息管理系统C语言代码.doc_第1页
第1页 / 共8页
学生信息管理系统C语言代码.doc_第2页
第2页 / 共8页
学生信息管理系统C语言代码.doc_第3页
第3页 / 共8页
学生信息管理系统C语言代码.doc_第4页
第4页 / 共8页
学生信息管理系统C语言代码.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《学生信息管理系统C语言代码.doc》由会员分享,可在线阅读,更多相关《学生信息管理系统C语言代码.doc(8页珍藏版)》请在三一文库上搜索。

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,stucurrent.name);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,stui.name); 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(stui.name,name)=0) flag=1; printf(学生信息如下n); printf(姓名: %sn,stui.name); 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(stui.name,name)=0) printf(请输入修改后的学生姓名: );

7、scanf(%s,stui.name);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(stui.name,name)=0) printf(要删除的学生姓名为:%sn,stui.name);printf(n); printf(你确定要删除吗?继续请按y,放弃请按nn);printf(n);printf(请选择:);scanf(%s,&a);if (a=y|a=Y)for(k=i;kcurrent;k+)strcpy(stuk.name,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、i.name); 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( 请选择:);scanf(%d,&choice);printf(nn);switch(choice) case 1:insert();break; case 2:query();break; case 3:update();break; case 4:deiete();break; case 5:list();break; case 6:save();break; case 7:load();break; case 0:return; default: printf(非法选择!请重新选择!);

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

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1