c语言课程设计报告(宿舍管理系统内容摘要:

)。 gets(st[i].age)。 printf(\n 请输入学生专业: )。 gets(st[i].major)。 fwrite(amp。 st[i],sizeof(struct st_message),1,fp)。 printf(输入成功。 \n 是否继续录入 (Y/N)?)。 choice=getchar()。 if(choice==39。 y39。 ||choice==39。 Y39。 ) continue。 else { fclose(fp)。 break。 } } } append_message() /*添加模块 */ {int i。 char choice。 FILE *fp。 fp=fopen(,at+)。 if(fp==NULL) {printf(\n\n*****库存文件不存在。 请建立。 按任意键退出。 )。 getchar()。 exit(1)。 } for (i=0。 i++) {struct st_message st[N]。 system (cls)。 getchar()。 printf(请输入所添加学生姓名: )。 gets(st[i].name)。 printf(\n 请输入所添加学生班级: )。 gets(st[i].classs)。 printf(\n 请输入所添加学生宿舍号: )。 gets(st[i].dorm)。 printf(\n 请输入所添加学生学号: )。 gets(st[i].num)。 printf(\n 请输入所添加学生性别: )。 gets(st[i].sex)。 printf(\n 请输入所添加学生年龄: )。 gets(st[i].age)。 printf(\n 请输入所添加学生专业: )。 gets(st[i].major)。 fwrite(amp。 st[i],sizeof(struct st_message),1,fp)。 printf(输入成功。 \n 是否继续添加 (Y/N)?)。 choice=getchar()。 if(choice==39。 y39。 ||choice==39。 Y39。 ) continue。 else {fclose(fp)。 break。 } } } revise_message() /*修改模块 */ {int i,choice,flag,fno,fsize,fnum。 char re_name[20],s[20]。 FILE *fp。 do {fp=fopen(,rt+)。 fno=fileno(fp)。 fsize=filelength(fno)。 fnum=fsize/sizeof(struct st_message)。 system(cls)。 gets(s)。 printf(请输入需要修改的学生姓名: )。 gets(re_name)。 for (i=0。 ifnum。 i++) { fread(amp。 st[i],sizeof(struct st_message),1,fp)。 if(!strcmp(re_name,st[i].name)) { printf(\n 该学生信息 \n\n)。 printf(学号 姓名 班级 宿舍号 性别 年龄 专业\n)。 printf(\n)。 printf(%8s %6s %4s %6s %4s %4s %20s\n,st[i].num,st[i].name, st[i].classs,st[i].dorm,st[i].sex,st[i].age,st[i].major)。 printf(您要修改哪一项。 \n)。 printf( \n)。 printf( \n)。 printf( \n)。 printf( \n)。 printf( \n)。 printf( \n)。 printf( \n)。 printf( \n)。 scanf(%d,amp。 choice)。 switch(choice) {case 1:printf(\n 请输入修改后的学号: )。 scanf(%s,st[i].num)。 break。 case 2:printf(\n 请输入修改后的姓名: )。 scanf(%s,st[i].name)。 break。 case 3:printf(\n 请输入修改后的班级: )。 scanf(%s,st[i].classs)。 break。 case 4:printf(\n 请输入修改后的宿舍号: )。 scanf(%s,st[i].dorm)。 break。 case 5:printf(\n 请输入修改后的性别: )。 scanf(%s,st[i].sex)。 break。 case 6:printf(\n 请输入修改后的年龄: )。 scanf(%s,st[i].age)。 break。 case 7:printf(\n 请输入修改后的专业: )。 scanf(%s,st[i].major)。 break。 case 8:return 1。 } getchar()。 system(cls)。 printf(\n 修改后的学生信息 \n\n)。 printf(学号 姓名 班级 宿舍号 性别 年龄 专业\n)。 printf(\n)。 printf(%8s %6s %4s %6s %4s %4s %20s\n,st[i].num,st[i].name, st[i].classs,st[i].dorm,st[i].sex,st[i].age,st[i].major)。 rewind(fp)。 fseek(fp,sizeof(struct st_message)*i,0)。 fwrite(amp。 st[i],sizeof(struct st_message),1,fp)。 fclose(fp)。 break。 } } if(i==fnum) printf(\n 该学生信息不存在。 )。 printf(\n\n 继续修改吗 ?(Y/N))。 choice=getchar()。 if(choice==39。 Y39。 ||choice==39。 y39。 ) {flag=1。 system(pause)。 } else flag=0。 }while(flag==1)。 return 1。 } delete_message() /*删除模块 */ {int i,j,choice,fno,fsize,fnum。 char d_num[10]。 FILE *fp。 system(cls)。 getchar()。 fp=fopen(,rt)。 if(fp==NULL) {printf(\n\n*****库存文件不存在。 请先建立。 按任意键退出。 )。 getchar()。 exit(1)。 } fno=fileno(fp)。 fsize=filelength(fno)。 fnum=fsize/sizeof(struct st_message)。 for(i=0。 ifnum。 i++) fread(amp。 st[i],sizeof(struct st_message),1,fp)。 printf(请输入需要删除学生的学号: \n)。 gets(d_num)。 system(cls)。 for(i=0。 ifnum。 i++) {if(!strcmp(d_num,st[i].num)) {printf(\n 该学生信息 \n\n)。 printf(学号 姓名 班级 宿舍号 性别 年龄 专 业 \n)。 printf(\n)。 printf(%8s %6。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。