c语言设计-学生成绩管理系统内容摘要:

void SearchByname(Student *a,int n,char name[])。 void SortByTotal(Student*a,int n)。 void SortByMcu(Student*a,int n)。 void SortByMath(Student*a,int n)。 void SortByEnglish(Student*a,int n)。 void Sort(Student *a,int n,int course)。 int DeleteByNo(Student*a,int n,char no[])。 void save(Student *a,int n)。 void english(Student stu[] , int n )。 void math(Student stu[] , int n)。 void mcu(Student stu[] , int n)。 void englishaver(Student stu[],int n)。 void mathaver(Student stu[],int n)。 void mcuaver(Student stu[],int n)。 void totalaver(Student stu[],int n)。 int load(Student t[])。 //符号常量和变量说明 define N 100 // 学生最大人数 int length = 0。 // 学生实际人数 define ENGLISH 0 // 英语课程 define MATH 1 // 数学课程 define MCU 2 // 单片机课程 define TOTAL 3 // 总分 Student stu[N] = // 学生结构体数组,全局变量 { {12, 王小安 , 男 , {1980, 2, 14}, {15, 55,31}}, {1, 蒋华平 , 男 , {1989, 11, 24}, {100, 100, 100}}, {8, 张羽 , 女 , {1982, 9, 22}, {92, 83, 58}}, {9, 刘长根 , 男 , {1980, 2, 18}, {60, 65, 72}}, {23, 李利民 , 男 , {1981, 6, 29}, {90, 52, 76}}, {16, 上官屏 , 女 , {1980, 8, 9}, {57, 78, 92}} }。 endif 主函数及各功能函数 include void Init() { int i。 计应 084 蒋华平 学生信息管理系统 第 14 页 共 34 页 14 length=5。 for(i=0。 ilength。 i++) { stu[i].=stu[i].+stu[i]. +stu[i].。 } } void Menu() { 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( 8修改学生信息 \n)。 printf( 9保存学生信息文件 \n)。 printf( 10读入学生信息文件 \n)。 printf( 11查询不及格学生信息 \n)。 printf( 12查询 平均成绩 \n)。 printf( 0退出 \n)。 printf(=================================\n)。 printf(请选择 :)。 } void Print(Student *p) { printf(%s\t%s\t%s\t%d%d%d\t%\t%\t%\t%, pno,pname,psex, p,p,p, p,p,p,p)。 } Void PrintTablHeader () { printf(学号 \t 姓名 \t 性别 \t 生日 \t\t 英语 \t 数学 \t 单片机 \t 总分 \n)。 } void PrintAll(Student *a,int n) { int i。 PrintTablHeader()。 for(i=0。 in。 i++) { 计应 084 蒋华平 学生信息管理系统 第 15 页 共 34 页 15 Print(amp。 a[i])。 //调用 Print 函 数输出第 i 个学生信息 printf(\n)。 } } int SearchByNo(Student *a,int n,char no[]) 按学号查找学生成绩信息 { int p=1。 int i。 for(i=0。 in。 i++) { if(strcmp(a[i].no,no)==0) { p=i。 break。 } } return p。 } void SearchByname(Student *a,int n,char name[]) 按学号查 找学生成绩信息 { int i。 int flag=0。 PrintTablHeader()。 for (i=0。 in。 i++) { if(scrimp(a[i].name, name)==0) { flag=1。 Print(amp。 a[i])。 printf(\n)。 } } if (flag==0) printf(查询失败 !)。 } void SortByEnglish(Student*a,int n) 根据英语成绩进行排序 { int i,j。 //循环变量 float maxval。 //用于临时保存最大值 int maxpos。 //用于临时保存最大值的下标 计应 084 蒋华平 学生信息管理系统 第 16 页 共 34 页 16 Student temp。 //临时变量 //总共需要 N1 次选择和交换 for (i=0。 in1。 i++) { maxval=a[i].。 maxpos=i。 //在无序区寻找最大值 for (j=i。 jn。 j++) { if (a[j].maxval) { maxval=a[j].。 maxpos=j。 } } if (maxpos!=1) { temp=a[maxpos]。 a[maxpos]=a[i]。 a[i]=temp。 } } } void SortByMath(Student*a,int n) 根据数学成绩进行排序 { int i,j。 //循环变量 float maxval。 //用于临时保存最大值 int maxpos。 //用于临时保存最大值的下标 Student temp。 //临 时变量 //总共需要 N1 次选择和交换 for (i=0。 in1。 i++) { maxval=a[i].。 maxpos=i。 //在无序区寻找最大值 for (j=i。 jn。 j++) { if (a[j].maxval) { maxval=a[j].。 maxpos=j。 } 计应 084 蒋华平 学生信息管理系统 第 17 页 共 34 页 17 } if (maxpos!=i) { temp=a[maxpos]。 a[maxpos]=a[i]。 a[i]=temp。 } } } void SortByMcu(Student*a,int n) 根据单片机成绩进行排序 { int i,j。 //循环变量 float maxval。 //用于临时保存最大值 int maxpos。 //用于临时保存最大值的下标 Student temp。 //临时变量 //总共需要 N1 次选择和交换 for (i=0。 in1。 i++) { maxval=a[i].。 maxpos=i。 //在无 序区寻找最大值 for (j=i。 jn。 j++) { if (a[j].maxval) { maxval=a[j].。 maxpos=j。 } } if (maxpos!=1) { temp=a[maxpos]。 a[maxpos]=a[i]。 a[i]=temp。 } } } void SortByTotal(Student*a,int n) 根据学生总成绩进行排序 { int i,j。 //循环变量 float maxval。 //用于临时保存最大值 计应 084 蒋华平 学生信息管理系统 第 18 页 共 34 页 18 int maxpos。 //用于临时保存最大值的下标 Student temp。 //临时变量 //总共需要 N1 次选择和交换 for (i=0。 in1。 i++) { maxval=a[i].。 maxpos=i。 //在无序区寻找最大值 for (j=i。 jn。 j++) { if (a[j].maxval) { maxval=a[j].。 maxpos=j。 } } if (maxpos !=1) { temp=a[maxpos]。 a[maxpos]=a[i]。 a[i]=temp。 } } } void english(Student stu[]。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。