学生成绩管理系统-linxu环境下

上传人:xzh****18 文档编号:34638616 上传时间:2018-02-26 格式:DOC 页数:7 大小:46KB
返回 下载 相关 举报
学生成绩管理系统-linxu环境下_第1页
第1页 / 共7页
学生成绩管理系统-linxu环境下_第2页
第2页 / 共7页
学生成绩管理系统-linxu环境下_第3页
第3页 / 共7页
学生成绩管理系统-linxu环境下_第4页
第4页 / 共7页
学生成绩管理系统-linxu环境下_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《学生成绩管理系统-linxu环境下》由会员分享,可在线阅读,更多相关《学生成绩管理系统-linxu环境下(7页珍藏版)》请在金锄头文库上搜索。

1、#include #include #include #include struct stu *input();struct stu *xinxi();struct stu *chaxun(FILE *fp);struct stu *xiugai(FILE *fp1,FILE *fp2);struct stu *shanchu(FILE *fp1,FILE *fp2);struct stu *banji();struct stu *yuwen(char a);struct stu *shuxue(char a);struct stu *yingyu(char a);struct stuchar

2、 name10;char num20;char ban5;char sex5;int chi,eng,math;int main() /*主函数*/int n;while(1)printf(=欢迎使用=n);printf(=学生成绩管理系统=n);printf(1.输入学生的信息=n);printf(2.查找-修改-删除学生的信息=n);printf(3.查询班级的平均分=n);printf(4.退出程序=n);printf(=n);printf(=n);printf(请输入您的选择:= );scanf(%d%*c,switch(n)case 1:input();break;case 2:xi

3、nxi();break;case 3:banji();break;default:exit(0);return 0;struct stu *shanchu(FILE *fp1,FILE *fp2) /删除信息函数struct stu student;char char_c20;int flag=0;printf(请输入您要删除的学生的学号: );gets(char_c);while(fread(&student,sizeof(student),1,fp1)=1)if(strcmp(student.num,char_c)=0)flag=1;fseek(fp1,sizeof(student),1)

4、;elsefwrite(if(flag)printf(删除成功!n);elseprintf(Error!未找到您想要删除的学生的信息.n);remove(/usr/wanlei/ku);rename(/usr/wanlei/ku2,/usr/wanlei/ku);printf(请输入任意符号返回首页);getchar();return 0;struct stu *xinxi() /查询-修改-删除信息函数int i;FILE *fp1,*fp2;if(fp1=fopen(/usr/wanlei/ku,rw)=NULL)printf(Error!=Cant open source file!n)

5、;getchar();return 0;if(fp2=fopen(/usr/wanlei/ku2,wb)=NULL)printf(Error!=Cant open file!n);getchar();exit(0);printf(1.查询学生的信息n);printf(2.修改学生的信息n);printf(3.删除学生的信息n);printf(4.返回首页n);printf(请输入您的选择:= );scanf(%d%*c,switch(i)case 1:chaxun(fp1);fclose(fp1);fclose(fp2);break;case 2:xiugai(fp1,fp2);fclose(

6、fp1);fclose(fp2);break;case 3:shanchu(fp1,fp2);fclose(fp1);fclose(fp2);break;case 4:return 0;default:printf(输入错误!n);return 0;struct stu *xiugai(FILE *fp1,FILE *fp2) /修改信息函数struct stu student;char char_c20;int flag=0;printf(请输入您要修改的学生的学号: );gets(char_c);while(fread(&student,sizeof(student),1,fp1)=1)i

7、f(strcmp(student.num,char_c)=0)flag=1;printf(请输入您要修改的学生的信息n);printf(请输入学生的姓名:);gets(student.name);printf(请输入学生的学号:);gets(student.num);printf(请输入学生的班级);gets(student.ban);printf(请输入学生的性别:);gets(student.sex);printf(输入学生的语文成绩数学成绩英语成绩:n);scanf(%d%d%d%*c,fwrite(if(flag=1)remove(/usr/wanlei/ku);rename(/usr

8、/wanlei/ku2,/usr/wanlei/ku);elseprintf(Sorry!没有找到您要查找的人!);printf(请输入任意值返回首页);getchar();return 0;struct stu *input() /输入信息函数struct stu student;FILE *fp;char ch;if(fp=fopen(/usr/wanlei/ku,ab)=NULL)printf(Error!=Cant open file!n);exit(0);doprintf(请输入学生的姓名:);gets(student.name);printf(请输入学生的学号:);gets(stu

9、dent.num);printf(请输入学生的班级:);gets(student.ban);printf(请输入学生的性别:);gets(student.sex);printf(输入学生的语文成绩数学成绩英语成绩:n);scanf(%d%d%d,getchar();fwrite(printf(您是否要继续输入?继续请输入 y|退出请输入 nn);scanf(%c%*c,while(ch=Y|ch=y);fclose(fp);return 0;struct stu *chaxun(FILE *fp) /查询信息函数struct stu student;char char_c20;printf(请

10、输入您要查询的学生的学号: );gets(char_c);while(fread(&student,sizeof(student),1,fp)=1)if(strcmp(student.num,char_c)=0)printf(姓名:%sn 学号:%sn 性别:%sn,student.name,student.num,student.ban);printf(性别:%sn,student.sex);printf(语文成绩:%dn 数学成绩:%dn 英语成绩:%dn,student.chi,student.math,student.eng);printf(请输入任意符号返回首页。n);getchar

11、();return 0;printf(没有找到您想要查询的学生:n 请输入任意符号返回首页);getchar();return 0;struct stu *banji() /查询班级平均分的函数struct stu student;FILE *fp;char char_b5;int i;if(fp=fopen(/usr/wanlei/ku,rb)=NULL)printf(Error!=Cant open source file!n);printf(Please input any key to continue!n);getchar();return 0;printf(请输入你要查询的班级:)

12、;gets(char_b);while(fread(&student,sizeof(student),1,fp)=1)if(strcmp(student.ban,char_b)=0)printf(请输入您要查询的科目n);printf(1.查询语文平均分n);printf(2.查询数学平均分n);printf(3.查询英语平均分n);scanf(%d,switch(i)case 1:yuwen(char_b);return 0;case 2:shuxue(char_b);return 0;case 3:yingyu(char_b);return 0;default:printf(未找到您要查询

13、的科目!n);return 0;elseprintf(寻找不到您所要查询的班级n);fclose(fp);return 0;struct stu *yuwen(char a) /查询语文平均分的函数 struct stu student;FILE *fp;float sum=0;int i=0;fp=fopen(/usr/wanlei/ku,rb);while(fread(&student,sizeof(student),1,fp)=1)if(strcmp(student.ban,a)=0)sum=sum+student.chi;i=i+1;sum=sum/i;printf(您要查询的%s 班

14、的语文成绩平均分是 %f 分n,a,sum);fclose(fp);return 0;struct stu *shuxue(char a) /查询数学平均分的函数 struct stu student;FILE *fp;float sum=0;int i=0;fp=fopen(/usr/wanlei/ku,rb);while(fread(&student,sizeof(student),1,fp)=1)if(strcmp(student.ban,a)=0)sum=sum+student.math;i=i+1;sum=sum/i;printf(您要查询的%s 班的数学成绩是 %f 分n,a,sum);fclose(fp);return 0;struct stu *yingyu(char a) /查询英语成绩平均分的函数 struct stu student;FILE *fp;float sum;int i=0;fp=fopen(/usr/wanlei/ku,rb);while(fread(&stude

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号