输入学生成绩查询删除系统
- 格式:doc
- 大小:33.00 KB
- 文档页数:8
/*输入10名学生的信息,每个学生含有成员名为“学号、姓名、语文、数学、英语、政治、计算机、总分、平均分、名次”,分别编写六个函数求:(1)输入一个学生的学号,查询该学生的信息并输出,若不存在显示没找到。
(2)输入一个学生的信息,按学号顺序将该学生的信息插入后输出。
(3)输入一个已存在学生的姓名信息,删除该学生的信息后输出。
(4)求每个学生的总分、平均分并输出;(5)求每门课程的平均分并输出;(6)对所有学生的信息按总分排序,并填写名次后输出;要求:每个学生的信息用结构体,10名学生的信息用数组存储,也可预先放在文件中,再由文件读到数组中。
程序启动后先显示“菜单”,当输入为1时,执行第(1)个函数;当输入为2时,执行第(2)个函数;当输入为3时,执行第(3)个函数;当输入为4时,执行第(4)个函数;当输入为5时,执行第(5)个函数;当输入为6时,执行第(6)个函数;当输入为7时,退出系统,当输入其他数字时,提示输入有错误。
*/#include <iostream>#include <cstring>using namespace std;//定义学生结构体struct student{char snum[10];//学号char name[10];//姓名float chi;//语文float math;//数学float eng;//英语float pol;//政治float com;//计算机float sum;//总分float ave;//平均分int rank;//排名};//系统功能介绍void Introduction(){cout<<"-------------------------------------------------------------------------"<<endl;cout<<"----------------------------------系统菜单-------------------------------"<<endl;cout<<"功能介绍:"<<endl;cout<<"输入“1”为查找"<<endl;cout<<"操作提示:输入一个学生的学号,查询该学生的信息并输出,若不存在显示没找到。
"<<endl;cout<<"输入“2”为插入"<<endl;cout<<"操作提示:输入一个学生的信息,按学号顺序将该学生的信息插入后输出。
"<<endl; cout<<"输入“3”为删除"<<endl;cout<<"操作提示:输入一个已存在学生的姓名信息,删除该学生的信息后输出。
"<<endl; cout<<"输入“4”为求每个学生的总分、平均分并输出"<<endl;cout<<"输入“5”为求每门课程的平均分并输出"<<endl;cout<<"输入“6”为对所有学生的信息按总分排序,并填写名次后输出"<<endl;cout<<"\t"<<"注意:执行6步骤前要先执行4步骤"<<endl;cout<<"输入“7”为退出系统"<<endl;cout<<"-------------------------------------------------------------------------"<<endl;}//初始化void Initinfo(student *&set,int &len){cout<<"-------------------------------------------------------------------------"<<endl;int i = 0;cout<<"----------------------------------初始化---------------------------------"<<endl;cout<<"请将"<<len<<"个学生的信息按照学号从小到大的顺序输入"<<endl;while(i != len){cout<<"请输入第"<<i+1<<"个学生的信息:"<<endl;cout<<"学号:";cin>>set[i].snum;cout<<"姓名:";cin>>set[i].name;cout<<"语文成绩:";cin>>set[i].chi;cout<<"数学成绩:";cin>>set[i].math;cout<<"英语成绩:";cin>>set[i].eng;cout<<"政治成绩:";cin>>set[i].pol;cout<<"计算机成绩:";cin>>set[i].com;set[i].sum = 0;set[i].ave = 0;set[i].rank = 0;i++;}}//(1)输入一个学生的学号,查询该学生的信息并输出,若不存在显示没找到。
void Search(student set[],int &len){char num[10];cout<<"请输入您要查找的学生的学号:";cin>>num;for(int i = 0 ; i < len ; i++){if( !strcmp(num,set[i].snum) ){cout<<"该学生的信息为:"<<endl;cout<<"学号:"<<set[i].snum<<endl;cout<<"姓名:"<<set[i].name<<endl;cout<<"语文成绩:"<<set[i].chi<<endl;cout<<"数学成绩:"<<set[i].math<<endl;cout<<"英语成绩:"<<set[i].eng<<endl;cout<<"政治成绩:"<<set[i].pol<<endl;cout<<"计算机成绩:"<<set[i].com<<endl;cout<<"总分为:"<<set[i].sum<<endl;cout<<"平均分为:"<<set[i].ave<<endl;cout<<"排名为:"<<set[i].rank<<endl;return;}}cout<<"没有找到该学生!"<<endl;}//(2)输入一个学生的信息,按学号顺序将该学生的信息插入后输出。
void Insert(student *&set,int &len){student temp;cout<<"请输入要插入的学生的信息"<<endl;cout<<"学号:";cin>>temp.snum;cout<<"姓名:";cin>>;cout<<"语文成绩:";cin>>temp.chi;cout<<"数学成绩:";cin>>temp.math;cout<<"英语成绩:";cin>>temp.eng;cout<<"政治成绩:";cin>>temp.pol;cout<<"计算机成绩:";cin>>;temp.sum = 0;temp.ave = 0;temp.rank = 0;cout<<endl;int i = 0;while(i != len){if( strcmp(set[i].snum , temp.snum) > 0){len++;for(int j = len - 1 ; j > i ; j--){set[j] = set[j-1];}set[i] = temp;break;}i++;}if(i == len){len++;set[len-1] = temp;}cout<<"输出所有学生信息;"<<endl;for( i = 0 ; i < len ; i++){// cout<<"第"<<i+1<<"个学生的信息为:"<<endl;cout<<"学号:"<<set[i].snum<<' ';cout<<"姓名:"<<set[i].name<<' ';cout<<"语文成绩:"<<set[i].chi<<' ';cout<<"数学成绩:"<<set[i].math<<' ';cout<<"英语成绩:"<<set[i].eng<<' ';cout<<"政治成绩:"<<set[i].pol<<' ';cout<<"计算机成绩:"<<set[i].com<<endl;}}//(3)输入一个已存在学生的姓名信息,删除该学生的信息后输出。