1、查询模块最好设计为可按学号,姓名,成绩任意属性进行;统计模块包括统计及格人数,不及格人数等功能。3.可调用库函数来美化界面。四、主要技术问题的描述:运用数组和库函数实现学生成绩的录入、统计、查询、修改、删除、输出。(1)定义类类型1)主函数main():定义学生结构体数组,调用录入、统计等函数对成绩表进行处理;(2)录入函数Input():输入学生成绩;(3)统计函数Statistic():计算平均成绩;(4)查询函数Lookup():查询指定学号学生成绩记录;(5)修改函数Modify():修改指定学号学生成绩记录;(6)删除函数Delete():删除指定学号学生记录;(7)输出函数Outp
2、ut():输出班级所有学生成绩记录;(8) 排序函数Sort():按平均分对学生成绩记录项进行降序排序;(9)插入函数Insert():按平均分顺序插入新记录。另外,学生数据可写入文件,也可从文件中读取。五、课程设计时间:六、课程设计的考核方式及评分方法1考核方式课程设计结束时,在机房当场验收。(1)教师提供测试数据,检查运行结果是否正确。(2)回答教师提出的问题。(3)学生提交课程设计报告(A4纸打印),并将电子文档和源程序发至ftp服务器:ftp:/210.31.197.23用户名和密码按照指导教师告知的即可。2评分方法(1)出勤率(2)课程设计准备工作(3)课程设计期间纪律(4)课程设计
3、运行结果(5)课程设计报告(6)答辩情况指导教师签字: 系主任签字:日 期: 年 月 日#include /引用库函数fstream.hstdlib.h ctype.hstdio.hstring.hiomanip.htypedef struct char class_020; /班级 int number; /学号 char name20; /姓名 float electrics; /电子技术成绩 float c_program; /C+语言成绩 float multimedia; /多媒体技术成绩 float english; /大学英语成绩 float math; /高等数学成绩 floa
4、t sport; /体育成绩 float polity; /马克思主义政治经济学 float summary; /总分 float average; /平均分Student; Student stu100; /结构体数组变量 int menu() /菜单函数 char c; do system(cls); /运行前清屏 cout*欢迎使用 王 者 学生成绩管理系统*endl;/菜单选择 基本操作:endl【a】输入数据【b】显示所有数据【c】按平均分降序排列【d】插入一组数据【e】按班级 学号修改一组数据【f】按班级 学号删除一组数据 cout查询:【g】按班级 学号查找并显示一组数据【h】按
5、姓名查找并显示一组数据【i】按总成绩 精确 查找并显示一组数据 小小创新(模糊查询): 【j】按总成绩查 模糊 找并显示一组数据 【k】按班级找并显示一组数据成绩统计:【l】统计各科及格和不及格人数【m】查看获得奖学金的同学 小小创新: 【n】统计要求分数段的人数文件的输入输出:【o】从文件中读入数据【p】将所有记录写入文件【q】退出本系统n *作者:11级 冶金与能源学院 热能与动力工程 2班 王庆超 201114680205*请你选择操作(a-q): c=getchar(); /读入选择 while(cq return(c- /返回选择 int Input(Student stud,int
6、 n) /输入若干条记录 int i=0; char sign; while(sign!=n&sign!N) /判断 coutstudn+i.class_0;请输入学生的学号:studn+i.number;请输入学生的姓名:studn+i.name;请输入该学生电子技术的成绩:studn+i.electrics;请输入该学生C+程序设计的成绩:studn+i.c_program;请输入该学生多媒体技术的成绩:studn+i.multimedia;请输入该学生大学英语的成绩:studn+i.english;请输入该学生高等数学的成绩:studn+i.math;请输入该学生大学体育的成绩:stud
7、n+i.sport;请输入该学生马克思主义政治经济学的成绩:studn+i.polity; studn+i.summary=studn+i.electrics+studn+i.c_program+studn+i.multimedia+studn+i.english+studn+i.math+studn+i.sport+studn+i.polity; studn+i.average=studn+i.summary/7;该学生的总分为:studn+i.summary平均分为:studn+i.average提示:继续写入成绩?(Y/N)sign; /输入判断 i+; return(n+i); voi
8、d Display(Student stud,int n) /显示所有记录 int i; if(!stud)没有记录 else - /格式头setw(5)班别setw(10)学号姓名电子C+多媒体英语数学体育政治总分平均分 for(i=1;in+1;i+) /循环输入 studi-1.summary=studi-1.electrics+studi-1.c_program+studi-1.multimedia+studi-1.english+studi-1.math+studi-1.sport+studi-1.polity; studi-1.average=studi-1.summary/7;
9、coutstudi-1.class_0studi-1.numberstudi-1.namestudi-1.electricsstudi-1.c_programstudi-1.multimediastudi-1.englishstudi-1.mathstudi-1.sportstudi-1.politystudi-1.summarystudi-1.average ttt pause void Sort(Student stud,int n) /按平均分排序 int i,j; Student t;/用于排序交换的临时变量 for(i=0;n-1;i+) /冒泡法排序 for(j=0;jn-1-i;
10、j+) if(studj.averagestudn.class_0;studn.number;studn.name;studn.electrics;studn.c_program;studn.multimedia;studn.english;studn.math;studn.sport;studn.polity; studn.summary=studn.electrics+studn.c_program+studn.multimedia+studn.english+studn.math+studn.sport+studn.polity; studn.average=studn.summary/
11、7; gets(x); n+; Sort(stu,n); /调用排序函数 插入成功! /返回成功信息 return(n); void Modify(Student stud,int n)/按班级 学号修改一组数据 char x20; /清除多余输入所用 int s;请输入需要修改成绩学生的班别: cinx;输入需要修改成绩学生的学号:s; while(in & (strcmp(studi.class_0,x)!=0 | (studi.number-s)!=0) ) /查找判断 if(i=n) 对不起,无该学生的成绩 /输入失败信息 return;-该学生的信息- studi.summary=s
12、tudi.electrics+studi.c_program+studi.multimedia+studi.english+studi.math+studi.sport+studi.polity; studi.average=studi.summary/7;studi.class_0studi.numberstudi.namestudi.electricsstudi.c_programstudi.multimediastudi.englishstudi.mathstudi.sportstudi.politystudi.summarystudi.average /交互输入 studn+i.summary=studn+i.electrics+studn+i.c_program+studn+i.multimedia+studn+i.english+studn+i.math+studn+i.sport+studn+i.polity; studn+i.average=studn+i.summary/7;该学生的总分为: studi=studn+i; /调用排序函数修改成功! int Delete(Student stud,int n) /按班级 学号查找,删除一条记录 char x20; int i=0,j;
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1