#include <iomanip>
#include <iostream>
#include <fstream>
#include <vector>
#include <conio.h>
#include <stdlib.h>
#include <string>
#include <process.h>
#include <algorithm>
#include <stdio.h>
using namespace std;
struct student
{
char name[12]; /// 姓名
char id[10]; /// 学号
float Cppnum; /// c++分数
float Snum; /// 数学分数
float Enum; /// 英语分数
float number; /// 总分
float average; ///平均分
student *next;
};
///-------定义类-----------------------
class stud{
student *p1,*p2,*head;
public:
~stud() /----析构函数------------------------
{
while(head){
p1=head->next;
delete head;
head=p1;
}
}
///------------成员函数------------
void output(student *head); // 输出学生成绩
student * input(student *head); // 增加学生记录
student* del(student *head, char*p); // 删除记录
student* find(student *head,char *p,int &n); // 查找学生记录(可查找多个同名数据)
student* stat(student *head); //排序统计学生总分
friend void total(student*head);//统计学生总分
friend void pingjun(student*head);//统计平均分
student* insert(student *head); //按学生总分插入记录
student* clear(student *head); // 删除当前表
void Inputs(student *p); //用于添加数据的子函数
};//----------------------------------------------------
---------用于添加数据的子函数-------///
void stud::Inputs(student*p)
{
cout<<setw(6)<<"姓名"<<setw(8)<<" 学号"<<setw(8)<<"C++"<<setw(8)<<"数学"<<setw(8)<<"英语"<<endl;
cin>>p->name >>p->id;
cin >>p->Cppnum;
while(cin.fail()){
cerr<<"您的输入有误,请重新输入"<<endl;
cin.clear ();
cin.sync ();
cin>>p->Cppnum;
}
cin>>p->Snum;
while(cin.fail()){
cerr<<"您的输入有误,请重新输入"<<endl;
cin.sync ();
cin.clear ();
cin>>p->Snum;
}
cin>>p->Enum
#include <iostream>
#include <fstream>
#include <vector>
#include <conio.h>
#include <stdlib.h>
#include <string>
#include <process.h>
#include <algorithm>
#include <stdio.h>
using namespace std;
struct student
{
char name[12]; /// 姓名
char id[10]; /// 学号
float Cppnum; /// c++分数
float Snum; /// 数学分数
float Enum; /// 英语分数
float number; /// 总分
float average; ///平均分
student *next;
};
///-------定义类-----------------------
class stud{
student *p1,*p2,*head;
public:
~stud() /----析构函数------------------------
{
while(head){
p1=head->next;
delete head;
head=p1;
}
}
///------------成员函数------------
void output(student *head); // 输出学生成绩
student * input(student *head); // 增加学生记录
student* del(student *head, char*p); // 删除记录
student* find(student *head,char *p,int &n); // 查找学生记录(可查找多个同名数据)
student* stat(student *head); //排序统计学生总分
friend void total(student*head);//统计学生总分
friend void pingjun(student*head);//统计平均分
student* insert(student *head); //按学生总分插入记录
student* clear(student *head); // 删除当前表
void Inputs(student *p); //用于添加数据的子函数
};//----------------------------------------------------
---------用于添加数据的子函数-------///
void stud::Inputs(student*p)
{
cout<<setw(6)<<"姓名"<<setw(8)<<" 学号"<<setw(8)<<"C++"<<setw(8)<<"数学"<<setw(8)<<"英语"<<endl;
cin>>p->name >>p->id;
cin >>p->Cppnum;
while(cin.fail()){
cerr<<"您的输入有误,请重新输入"<<endl;
cin.clear ();
cin.sync ();
cin>>p->Cppnum;
}
cin>>p->Snum;
while(cin.fail()){
cerr<<"您的输入有误,请重新输入"<<endl;
cin.sync ();
cin.clear ();
cin>>p->Snum;
}
cin>>p->Enum