C语言版学生成绩管理系统

  

本文实例为大家分享了C语言版学生成绩管理系统的具体代码,供大家参考,具体内容如下
  

        # include   # include   # include   # include   # include   # include   char buf [255];   字符c=14;   char[]道路=癉: \ \数据”;   char tmp []=" D: \ \ tmp”;   结构体的学生   {   char[20]名称;   char [20];   char部门[20];   char ClassNo [20];   双数学、中文、英文;   双大街;   bool传递;   }学生[500];   bool cmp1(学生s1, s2)   {   返回s1.Chinese> s2.Chinese;   }   bool cmp2(学生s1, s2)   {   返回s1.Math> s2.Math;   }   bool cmp3(学生s1, s2)   {   返回s1.English> s2.English;   }   bool cmp4(学生s1, s2)   {   返回s1.Ave> s2.Ave;   }//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -空类(int cmd)/*   1 ChineseSort   2数学排序   3 EnglishSort   4 AveSort   */int类型(int cmd)   {   学生斯图;   文件* fp=fopen(路径,“ab +”);   整数n,问=0;   在((n=从文件中读(和斯图,sizeof (stu), 1, fp)在0))   {   学生(问+ +)=斯图;   }   文件关闭(fp);   开关(cmd)   {   案例1:   std::排序(学生、学生+问cmp1);   打破;   案例2:   std::排序(学生、学生+问cmp2);   打破;   案例3:   std::排序(学生、学生+问cmp3);   打破;   案例4:   std::排序(学生、学生+问cmp4);   打破;   默认值:   退出(0);   }   返回问;   }//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -PrintTitle ()   空白PrintTitle ()   {   printf(" % 8年代-12年代-12年代% % % 8 s % 7 s % 7 s % 7 s % 7 s % s \ n”,“姓名”,“班级”,“学”号、“系院”、“语文”,“数学”,“英语”,“平均分”、“及”格);   }//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -安全性(学生斯图)   空白打印(学生斯图)   {   printf(" % 8年代-12年代-12年代% % % 8 s % -7.2低频% -7.2低频% -7.2低频% -7.2低频% s \ n”, stu.Name, stu.ClassNo, stu.No, stu.Dept, stu.Chinese, stu.Math, stu.English, stu.Ave, stu.Pass& # 63; "是":"否");   }//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -PrintNo (char [])   空白PrintNo (char [])   {   学生斯图;   int n;   bool找到=0;   文件* fp=fopen(路径,“ab + ");//以ab +方式打开防止数据文件不存在时发生错误   而((n=从文件中读(和斯图,sizeof (stu), 1, fp))在0)   {   如果(! strcmp (stu.No,没有)   {   找到=1;   打破;   }   }   文件关闭(fp);   如果(发现)   {   PrintTitle ();   打印(stu);   }   其他的   把(“未找到!”);   }//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -PrintClass (char ClassNo [])   空白PrintClass (char ClassNo [])   {   学生斯图;   文件* fp=fopen(路径,“ab +”);   整数n,问=0;   在((n=从文件中读(和斯图,sizeof (stu), 1, fp)在0))   {   如果(! strcmp (stu.ClassNo ClassNo))   {   如果(cnt==0)   PrintTitle ();   打印(stu);   问+ +;   }   }   文件关闭(fp);   如果(cnt==0)   把(“无数据”);   其他的   printf("共% d条\ n ",问);   }//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -PrintDept (char [])   空白PrintDept (char部门[])   {   学生斯图;   文件* fp=fopen(路径,“ab +”);   整数n,问=0;   在((n=从文件中读(和斯图,sizeof (stu), 1, fp)在0))   {   如果(! strcmp (stu.Dept,部门)   {   如果(cnt==0)   PrintTitle ();   打印(stu);   问+ +;   }   }   文件关闭(fp);   如果(cnt==0)   把(“无数据”);   其他的   printf("共% d条\ n ",问);   }//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -PrintAll ()   空白PrintAll ()   {   学生斯图;   文件* fp=fopen(路径,“ab +”);   整数n,问=0;   在((n=从文件中读(和斯图,sizeof (stu), 1, fp)在0))   {   如果(cnt==0)   PrintTitle ();   打印(stu);   问+ +;   }   文件关闭(fp);   如果(cnt==0)   把(“无数据”);   其他的   printf("共% d条\ n ",问);   }//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -固化()   学生输入()   {   学生斯图;   把(“请输入姓名,班级,学号,系院:”);   scanf (“% s % s % s % s”,和stu.Name,, stu.ClassNo,, stu.No,, stu.Dept);   把(“请输入各科成绩:语文、数学,英语”);   scanf(“%低频%低频%低频,stu.Chinese,, stu.Math,, stu.English);   stu.Ave=(stu.Chinese + stu.Math + stu.English)/3;   如果(stu.Chinese>=60,和stu.Math>=60,和stu.English>=60)   stu.Pass=1;   其他的   stu.Pass=0;   返回斯图;   }//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - insert ()   空隙插入()   {   int cmd;   {做   学生stu=输入();   文件* fp=fopen(路径,“ab +”);   写入文件(和斯图,sizeof (stu), 1, fp);   文件关闭(fp);   把(“录入成功”);   把(“继续录入吗?[1]是[0]否”);   scanf (“% d”,和cmd);   }(cmd==1);   }//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -德尔()   空白德尔()   {   int cmd, cmd2;   char [20];   {做   把(“请输入要删除的学号:”);   scanf (“% s”,和没有);   学生斯图;   文件* fp=fopen(路径,“ab +”);   文件* fp2=fopen (tmp,“世界银行”);   整数n,找到=0;   而((n=从文件中读(和斯图,sizeof (stu), 1, fp))在0)   {   如果(! strcmp (stu.No,没有)   {   找到=1;   打印(stu);   把(“确定要删除吗?[1]确定[0]取消”);   scanf (“% d”, cmd2);   如果(cmd2==1)   把(“已删除”);   其他的   写入文件(和斯图,sizeof (stu), 1, fp2);   }   其他的   写入文件(和斯图,sizeof (stu), 1, fp2);   }   文件关闭(fp);   文件关闭(fp2);   如果(发现==0)   {   printf("未找到学号% s \ n”,没有);   删除(tmp);   }   其他的   {   删除(路径);   重命名(tmp、路径);   }   把(“继续删除吗?[1]是[0]否”);   scanf (“% d”,和cmd);   }(cmd==1);   }//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -改改()   空变化()   {   int cmd;   char [20];   {做   把(“请输入要更改的学号:”);   scanf (“% s”,和没有);   学生斯图;   int找到=0;   文件* fp=fopen(路径,“ab +”);   文件* fp2=fopen (tmp,“世界银行”);   int n;   而((n=从文件中读(和斯图,sizeof (stu), 1, fp))在0)   {   如果(! strcmp (stu.No,没有)   {   找到=1;   斯图=输入();   写入文件(和斯图,sizeof (stu), 1, fp2);   }   其他的   写入文件(和斯图,sizeof (stu), 1, fp2);   }   文件关闭(fp);   文件关闭(fp2);   如果(发现)   {   删除(路径);   重命名(tmp、路径);   把(“更改成功!”);   }   其他的   {   printf("未找到学号% s \ n”,没有);   删除(tmp);   }   把(“继续更改吗?[1]是[0]否”);   scanf (“% d”,和cmd);   }(cmd==1);   }//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -AboutCourse   空中国()   {   两倍金额=0,大街;   int通过=0,失败=0,更好的=0;   学生斯图;   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

C语言版学生成绩管理系统