版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
25/25题目:班级档案治理系统一、设计任务与目标对一个有N个学生的班级,通过该系统实现对该班级学生的差不多信息进行录入、显示、修改、删除、保存等操作的治理。功能要求:(1)本系统采纳一个包含N个数据的结构体数组,每个数据的结构应当包括:学号、姓名、性不、年龄、备注。(2)本系统显示如此的菜单:请选择系统功能项:a学生差不多信息录入b学生差不多信息显示c学生差不多信息保存d学生差不多信息删除e学生差不多信息修改(要求先输入密码)f学生差不多信息查询(1)按学号查询(2)按姓名查询(3)按性不查询(4)按年龄查询g.退出系统(3)执行一个具体的功能之后,程序将重新显示菜单。(4)将学生差不多信息保存到文件中。(5)进入系统之前要先输入密码。二、方案设计与论证要紧采纳结构体数组,通过scanf函数从键盘输入学生各种信息,每当修改学生信息时需要调用密码验证函数。定义了一个文件指针,密码验证函数中,通过fopen打开已有文本文件,然后通过fgetc逐个读取该文件中的字符来实现。退出系统时向学生信息文件中写入数据并关闭文件就实现了保存文件的功能。三、程序框图或流程图,程序清单与调用关系显示信息输出“修改信息,输入学号”输出“该生不存在”输入密码分不查询显示修改后的学生信息进行删除输入“5”输入学号?结束输出“密码错误”输入密码NY显示信息输出“修改信息,输入学号”输出“该生不存在”输入密码分不查询显示修改后的学生信息进行删除输入“5”输入学号?结束输出“密码错误”输入密码输出“输出“请选择”输入“7”输出“信息录入(1)退出系统(7)“结束结束输出输出“请选择”输入“1”输出输出“显示(2)保存(3)删除(4)修改(5)查询(6)”输入“输入“4”输入“6”输出输出“通过学号姓名性不年龄进行查询”N输出“输出“该生不存在”输出输出“请选择”输入“2”进行修改进行修改输出输出“请选择”输入“2”四、全部源程序清单#include<stdio.h>#include<stdlib.h>#include<string.h>#include<conio.h>#defineN3structstudent{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<n;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<n;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<n;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<n;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<n;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<n;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<n;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<n;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<select&&select<7){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
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广东财贸职业学院《机器人技术及应用》2023-2024学年第一学期期末试卷
- 赣西科技职业学院《统计软件SAS及其应用》2023-2024学年第一学期期末试卷
- 4岁儿童编程培训课件
- 七年级语文上册第五单元动物世界17动物笑谈教案新人教版
- 三年级品德与社会下册第二单元第三课分享快乐教案新人教版
- 三年级数学下册六年月日第1课时认识年月日教案新人教版
- 2021中级统计师考试《统计实务》预测题库及答案
- 《健康行为树文明》课件
- 安全防护监理培训课件
- 《阿狸主题餐厅》课件
- 林业专业知识考试试题及答案
- 2024年湖南省长沙市中考数学试题(含解析)
- 2024年大学华西医院运营管理部招考聘用3人高频难、易错点500题模拟试题附带答案详解
- 深圳市南山区2024-2025学年数学三年级第一学期期末教学质量检测模拟试题含解析
- 小学三年级信息技术考核方案
- 配电网工程工艺质量典型问题及解析
- 2023年二轮复习解答题专题二:一次函数的应用方案设计型(原卷版+解析)
- 2024上海市化工职业病防治院上海市职业安全健康研究院工作人员招聘20人(高频重点复习提升训练)共500题附带答案详解
- 人教版英语八年级上册Unit 6《Im going to study computer science》说课稿
- (完整版)光伏施工质量控制重点
- 微积分试卷及规范标准答案6套
评论
0/150
提交评论