// subject.h: interface for the Csubject class. //
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_SUBJECT_H__3EF2ACE3_8F76_4F4B_9824_FBACBCD74AA5__INCLUDED_)
#define AFX_SUBJECT_H__3EF2ACE3_8F76_4F4B_9824_FBACBCD74AA5__INCLUDED_
#if _MSC_VER > 1000 #pragma once
#endif // _MSC_VER > 1000 #include \"string\" using namespace std; class Csubject {protected: string name; int num;
float c; float math; float english; float physics; float sports; float sum;
public: Csubject(); virtual ~Csubject(); };
#endif
// !defined(AFX_SUBJECT_H__3EF2ACE3_8F76_4F4B_9824_FBACBCD74AA5__INCLUDED_)
//student.h
// student.h: interface for the Cstudent class. //
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_STUDENT_H__4DF6AC87_0816_4D66_A62D_A4FF1EDF59FD__INCLUD
ED_)
#define AFX_STUDENT_H__4DF6AC87_0816_4D66_A62D_A4FF1EDF59FD__INCLUDED_
#if _MSC_VER > 1000 #pragma once
#endif // _MSC_VER > 1000 #include \"subject.h\"
#include \"string\" using namespace std;
class Cstudent:public Csubject//学生类(派生类) {
protected: };
#endif
// !defined(AFX_STUDENT_H__4DF6AC87_0816_4D66_A62D_A4FF1EDF59FD__INCLUDED_)
//teacher.h
// teacher.h: interface for the Cteacher class. //
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_TEACHER_H__3DAF8294_2302_46F8_8008_BFBF9096F39C__INCLUDE
string name1[100]; int num1[100];//学号 float c1[100];//C++ float math1[100]; float sports1[100]; float physics1[100]; float english1[100]; float sum1[100];
void find();//学生查询函数 void regisiter();//学生注册函数 void rank();//学生成绩统计函数 void load();//学生登录函数
public:
D_)
#define AFX_TEACHER_H__3DAF8294_2302_46F8_8008_BFBF9096F39C__INCLUDED_
#if _MSC_VER > 1000 #pragma once
#endif // _MSC_VER > 1000
#include \"student.h\"
class Cteacher:public Cstudent//教师类(派生类) { public: };
#endif
// !defined(AFX_TEACHER_H__3DAF8294_2302_46F8_8008_BFBF9096F39C__INCLUDED_)
// subject.cpp: implementation of the Csubject class. //
//////////////////////////////////////////////////////////////////////
subject.cpp #include \"subject.h\"
////////////////////////////////////////////////////////////////////// // Construction/Destruction
//////////////////////////////////////////////////////////////////////
Csubject::Csubject()
void set_data();//输入学生信息函数
void regisiter();//教师注册函数 void load();//教师登录函数
void change();//修改函数 void del();//删除函数
void insert();//插入函数
{
}
Csubject::~Csubject() { }
//student.cpp
// student.cpp: implementation of the Cstudent class. //
//////////////////////////////////////////////////////////////////////
#include \"student.h\" #include \"conio.h\" #include \"fstream\"
#include \"iostream\" using namespace std;
////////////////////////////////////////////////////////////////////// // Construction/Destruction
//////////////////////////////////////////////////////////////////////
void Cstudent::find()//学生查询函数 {
system(\"cls\"); int studentnumber; bool pd;
cout<<\"学号查询\"< infile.open(\"teachermeg.txt\ //读出数据 infile>>name>>num>>math>>c>>english>>physics>>sports; while(infile.good()) { if (num==studentnumber)//匹配学号 } { cout<<\" 姓名 :\"< { infile>>name>>num>>math>>c>>english>>physics>>sports; pd=true; } if(pd) { cout<<\"不存在该学号成绩,任意键返回上一级\"; getch(); } system(\"cls\"); infile.close(); } //student.cpp void Cstudent::regisiter()//学生注册函数 { system(\"cls\");//清屏 ofstream outfile; outfile.open(\"stuinfo.txt\存入内存 if(!outfile) { cerr<<\"内存分配错误\"< string username; string password1; string password2; cout<<\"欢迎学生来此系统注册\"< cout<<\"请输入注册密码:\"< cout<<\"请再次输入密码:\"< if(password1==password2)//比较两次密码是否符合要求 { cout<<\"两次密码相同,注册成功!\"< } } void Cstudent::rank()//学生成绩统计函数 { system(\"cls\"); system(\"color 3e\"); ifstream infile; infile.open(\"teachermeg.txt\if(!infile) { cerr<<\"打开错误!\"< int b=0; int a; while(!infile.eof())//读出全部数据 { infile>>name1[b]; infile>>num1[b]; infile>>math1[b]; infile>>c1[b]; infile>>english1[b]; infile>>physics1[b]; infile>>sports1[b]; sum1[b]=math1[b]+c1[b]+english1[b]+physics1[b]+sports1[b];//总成绩 b++; } a=b-1; float t; string str; int mu; float mm,cc,ee,pp,ss; for(int i=0;ifor(int j=i;j{ t=sum1[i]; sum1[i]=sum1[j]; sum1[j]=t; str=name1[i]; name1[i]=name1[j]; name1[j]=str; mu=num1[i]; num1[i]=num1[j]; num1[j]=mu; mm=math1[i]; math1[i]=math1[j]; math1[j]=mm; ee=english1[i]; english1[i]=english1[j]; english1[j]=ee; pp=physics1[i]; physics1[i]=physics1[j]; physics1[j]=pp; ss=sports1[i]; sports1[i]=sports1[j]; sports1[j]=ss; cc=c1[i]; c1[i]=c1[j]; c1[j]=cc; } } } for(int v=0;vcout<<\"同学的排名是:\"; cout< infile.close(); getch(); system(\"cls\"); } void Cstudent::load()//学生登录函数 { void main_window_student(); void load(); system(\"cls\"); string name; string password; cout<<\"请亲爱的同学登陆本系统\"< cout<<\"请输入密码:\"< ifstream infile; infile.open(\"stuinfo.txt\将stuinfo.txt数据读出内存 string username; string userpassword; infile>>username>>userpassword;//读出两个数据(账号、密码) while(infile.good())//循环,密码错误后可重新输入 { if ((username==name)&&(userpassword==password))//匹对账号密码 { cout<<\"登录成功\"; system(\"cls\"); } } main_window_student();//进入学生成绩系统 system(\"cls\"); } else { cout<<\"密码错误!请重新登录...\"; getch(); load(); } /* else { infile>>username>>userpassword; continue; }*/ infile.close(); system(\"cls\"); cout<<\"你输入的用户名或密码有错,请重新登录!\"; getch(); load(); //teacher.cpp // teacher.cpp: implementation of the Cteacher class. // ////////////////////////////////////////////////////////////////////// #include \"conio.h\" #include \"teacher.h\" #include \"fstream\" #include \"string\" #include \"windows.h\" #include \"iostream\" using namespace std; ////////////////////////////////////////////////////////////////////// // Construction/Destruction ////////////////////////////////////////////////////////////////////// void Cteacher::set_data()//输入学生信息函数 { system(\"cls\"); ofstream outfile; outfile.open(\"stuinfo.txt\if(!outfile) { cerr<<\"出错\"< for(int i=1;i<100;i++)//输入成绩 { cout<<\"请输入第\"<>name1[i]; cout<<\"学号:\"< cout<<\"高数:\"< cout<<\"英语:\"< cout<<\"物理:\"< cout<<\"体育:\"< outfile< char a; cout<<\"请选择Y或者N\"< if('y'==a||'Y'==a)//判断是否继续录入信息 { system(\"cls\"); continue; } else { } break; break; } void Cteacher::regisiter()//教师注册函数 { } { system(\"cls\"); string name; string password; cout<<\"请亲爱的老师登陆本系统\"< { cerr<<\"内存分配错误\"< } string username; string password1; string password2; cout<<\"欢迎老师来此系统注册\"< cout<<\"请输入注册密码:\"< cout<<\"请再次输入密码:\"< if(password1==password2)//比较两次密码是否符合要求 { cout<<\"两次密码相同,注册成功!\"< cin>>name; cout<<\"请输入密码:\"< ifstream infile(\"teachermeg.txt\读出数据 string username; string userpassword; infile>>username>>userpassword;//读入两个数据(账号、密码) while(infile.good()) {if(username==name&&userpassword==password)//匹配信息 { cout<<\"登录成功!\"< system(\"cls\"); } } void Cteacher::change()//修改函数 { system(\"cls\"); int i; cout<<\"请输入修改学生的信息\"< cout<<\"请输入学号:\"; cin>>num2; ifstream infile; infile.open(\"stuinfo.txt\ string a[50][7]; for( i=0;i<50;i++) //读出学生数据 { infile>>a[i][0]>>a[i][1]>>a[i][2]>>a[i][3]>>a[i][4]>>a[i][5]>>a[i][6]; } infile.close(); for( i=0;i<50;i++) //暂存读出的数据 {if(num2==a[i][1] ) a[i][1]=\"0\";}//注销原学生信息 ofstream Ofile(\"stuinfo.txt\将原文件清空 Ofile.close(); ofstream outfile(\"stuinfo.txt\ for(i=0;i<50;i++) { if(a[i][1]!=\"0\") //重新保存合法的用户信息