学校的期末设计
项目目的:实现职工类、教室类、学生类信息的录入,输出,修改,删除,查找等。
有用的话就点个赞吧
#include"iostream"
#include"stdlib.h"
#define MAX 100
using namespace std;
class person //定义一个类实现共有的基础信息
{
public:
int num;
char name[20];
char sex[4];
char zy[50];
};
//Teacher class
class Teacher :virtual public person
{
public:
char bm[20];
char zc[20];
char jc[20];
void Input() //录入信息
{
cout << "Input num: "; cin >> num;
cout << "Input name: "; cin >> name;
cout << "Input sex: "; cin >> sex;
cout << "Input zy: "; cin >> zy;
cout << "Input bm: "; cin >> bm;
cout << "Input zc: "; cin >> zc;
cout << "Input jc: "; cin >> jc;
}
void Output() //输出信息
{
cout << "编号: " << num << " " << "姓名: " << name << " " << "性别: " << sex << " " << "专业: " << zy <<
" " << "部门: " << bm << " " << "职称: " << zc << " " << "奖惩情况: " << jc << endl;
}
};
Teacher Tea[MAX]; //定义一个教师的对象数组
static int Teatop; //定义一个静态常量
class TeaManager //教师的管理类
{
public:
int Add();
int Search();
void Edit();
int Delete();
};
int TeaManager::Add() //添加功能
{
system("cls"); //清屏
Teacher t;
int i, nu;
if (Teatop == MAX)
{
cout << "人数已满" << endl;
return 0;
}
cout << "请输入编号:"; cin >> nu;
for (i = 0; i < Teatop; i++)
{
if (nu == Tea[i].num)
{
cout << "已有该编号" << endl;
return 0;
}
}
t.Input(); Tea[Teatop] = t; Teatop++;
cout << "添加成功!" << endl;
return 1;
}
int TeaManager::Search() //查询功能
{
system("cls");
int j, n;
cout << "请输入编号:"; cin >> n;
for (j = 0; j < Teatop; j++)
{
if (n == Tea[j].num) break;
}
if (j == Teatop)
cout << "没有此人!" << endl;
else
Tea[j].Output();
return 1;
}
void TeaManager::Edit() //编辑功能
{
system("cls"); //清屏
Teacher t1;
int j, n;
cout << "请输入要编辑的人的编号:"; cin >> n;
for (j = 0; j < Teatop; j++)
{
if (n == Tea[j].num) break;
}
if (j == Teatop)
{
cout << "没有此人!" << endl; return;
};
cout << "输入修改后的信息,编号不能改:" << endl;
t1.Input();
Tea[j] = t1;
cout << "编辑成功!" << endl;
}
int TeaManager::Delete() //删除功能
{
system("cls"); //清屏
int j, n;
cout << "请输入要删除的人的编号:"; cin >> n;
for (j = 0; j < Teatop; j++)
{
if (n == Tea[j].num) break;
}
if (j == Teatop)
{
cout << "没有此人!" << endl; return 0;
};
for (j; j < Teatop; j++)
{
Tea[j] = Tea[j + 1];
}
Teatop--;
cout << "删除成功!" << endl;
return 1;
}
void Tea_mune(TeaManager TM) //用一个管理教师的类来实现结果的显示
{
system("cls");
int b;
char c;
do {
cout << endl; cout << endl;
cout << "教师管理" << endl;
cout << "==========================================================================================" << endl;
cout << "| 1.添加 ";
cout << "2.查询 ";
cout << "3.编辑 ";
cout << "4.删除 ";
cout << "0.退出 |" << endl;
cout << "==========================================================================================" << endl;
cout << "请选择:"; cin >> b;
switch (b)
{
case 1:TM.Add(); break;
case 2:TM.Search(); break;
case 3:TM.Edit(); break;
case 4:TM.Delete(); break;
default:cout << "\n error" << endl; break;
case 0:break;
}
} while (b != 0);
}
class Student :virtual public person //学生
{
public:
char bj[10];
char jc[10];
void Input()
{
cout << "Input num : "; cin >> num;
cout << "Input name : "; cin >> name;
cout << "Input sex : "; cin >> sex;
cout << "Input zy : "; cin >> zy;
cout << "Input bj : "; cin >> bj;
cout << "Input jc : "; cin >> jc;
}
void Output()
{
cout << "编号: " << num << " " << "姓名: " << name << " " << "性别: " << sex << " " << "专业: " << zy <<
" " << "班级: " << bj << " " << "奖惩情况: " << jc << endl;
}
};
Student Stu[MAX]; //定义一个学生的对象数组
static int Stutop;
class StuManager //管理学生的类
{
public:
int Add();
int Search();
void Edit();
int Delete();
};
int StuManager::Add() //添加功能
{
system("cls");
Student t;
int i, nu;
if (Stutop == MAX)
{
cout << "人数已满" << endl;
return 0;
}
cout << "请输入编号:"; cin >> nu;
for (i = 0; i < Stutop; i++)
{
if (nu == Stu[i].num)
{
cout << "已有该编号" << endl;
return 0;
}
}
t.Input();
Stu[Stutop] = t;
Stutop++;
cout << "添加成功!" << endl;
return 1;
}
int StuManager::Search() //查询功能
{
system("cls");
int j, n;
cout << "请输入编号:"; cin >> n;
for (j = 0; j < Stutop; j++)
{
if (n == Stu[j].num) break;
}
if (j == Stutop)
cout << "没有此人!" << endl;
else
Stu[j].Output();
return 1;
}
void StuManager::Edit() //编辑功能
{
system("cls");
Student t1;
int j, n;
cout << "请输入要编辑的人的编号:"; cin >> n;
for (j = 0; j < Stutop; j++)
{
if (n == Stu[j].num) break;
}
if (j == Stutop)
{
cout << "没有此人!" << endl; return;
};
cout << "输入修改后的信息,编号不能改:" << endl;
t1.Input();
Stu[j] = t1;
cout << "编辑成功!" << endl;
}
int StuManager::Delete() //删除功能
{
system("cls");
int j, n;
cout << "请输入要删除的人的编号:"; cin >> n;
for (j = 0; j < Stutop; j++)
{
if (n == Stu[j].num) break;
}
if (j == Stutop)
{
cout << "没有此人!" << endl; return 0;
};
for (j; j < Stutop; j++)
{
Stu[j] = Stu[j + 1];
}
Stutop;
cout << "删除成功!" << endl;
return 1;
}
void Stu_mune(StuManager TM)
{
system("cls");
int b;
char c;
do {
cout << endl; cout << endl;
cout << "学生管理" << endl;
cout << " << endl";
cout << "| 1.添加 ";
cout << "2.查询 ";
cout << "3.编辑 ";
cout << "4.删除 ";
cout << "0.退出 | " << endl;
cout << " << endl";
cout << "请选择:"; cin >> b;
switch (b)
{
case 1:TM.Add(); break;
case 2:TM.Search(); break;
case 3:TM.Edit(); break;
case 4:TM.Delete(); break;
default:cout << "\n error" << endl; break;
case 0:break;
}
} while (b != 0);
}
class Administrator :virtual public person //行政人员
{
public:
char bm[10];
char zc[10];
char jc[10];
void Input()
{
cout << "Input num : "; cin >> num;
cout << "Input name : "; cin >> name;
cout << "Input sex : "; cin >> sex;
cout << "Input zy : "; cin >> zy;
cout << "Input bm : "; cin >> bm;
cout << "Input zc : "; cin >> zc;
cout << "Input jc : "; cin >> jc;
}
void Output()
{
cout << "编号: " << num << " " << "姓名: " << name << " " << "性别: " << sex << " " << "专业: " << zy <<
" " << "部门: " << bm << " " << "职称: " << zc << " " << "奖惩情况: " << jc << endl;
}
};
Administrator Adm[MAX];
static int Admtop;
class AdmManager //管理行政人员的类
{
public:
int Add();
int Search();
void Edit();
int Delete();
};
int AdmManager::Add()
{
system("cls");
Administrator t;
int i, nu;
if (Admtop == MAX)
{
cout << "人数已满" << endl;
return 0;
}
cout << "请输入编号:"; cin >> nu;
for (i = 0; i < Admtop; i++)
{
if (nu == Adm[i].num)
{
cout << "已有该编号" << endl;
return 0;
}
}
t.Input();
Adm[Admtop] = t;
Admtop++;
cout << "添加成功!" << endl;
return 1;
}
int AdmManager::Search()
{
system("cls");
int j, n;
cout << "请输入编号:"; cin >> n;
for (j = 0; j < Admtop; j++)
{
if (n == Adm[j].num) break;
}
if (j == Admtop)
cout << "没有此人!" << endl;
else
Adm[j].Output();
return 1;
}
void AdmManager::Edit()
{
system("cls");
Administrator t1;
int j, n;
cout << "请输入要编辑的人的编号:"; cin >> n;
for (j = 0; j < Admtop; j++)
{
if (n == Adm[j].num) break;
}
if (j == Admtop)
{
cout << "没有此人!" << endl; return;
};
cout << "输入修改后的信息,编号不能改:" << endl;
t1.Input();
Adm[j] = t1;
cout << "编辑成功!" << endl;
}
int AdmManager::Delete()
{
system("cls");
int j, n;
cout << "请输入要删除的人的编号:"; cin >> n;
for (j = 0; j < Admtop; j++)
{
if (n == Adm[j].num) break;
}
if (j == Admtop)
{
cout << "没有此人!" << endl; return 0;
};
for (j; j < Admtop; j++)
{
Adm[j] = Adm[j + 1];
}
Admtop--;
cout << "删除成功!" << endl;
return 1;
}
void Adm_mune(AdmManager TM)
{
system("cls");
int b;
char c;
do {
cout << endl; cout << endl;
cout << "行政人员管理" << endl;
cout << " << endl";
cout << "| 1.添加 ";
cout << "2.查询 ";
cout << "3.编辑 ";
cout << "4.删除 ";
cout << "0.退出 | " << endl;
cout << " << endl";
cout << "请选择:"; cin >> b;
switch (b)
{
case 1:TM.Add(); break; //TM去调用add类
case 2:TM.Search(); break;
case 3:TM.Edit(); break;
case 4:TM.Delete(); break;
default:cout << "\n error" << endl; break;
case 0:break;
}
} while (b != 0);
}
int main() //主函数
{
TeaManager Teamer;
StuManager Stumer;
AdmManager Admmer;
int a = 1;
char c;
cout << " *************************************";
cout << endl << " $ 高校人员管理系统 $" << endl;
cout << " *************************************";
while (a)
{
system("cls");
cout << endl;
cout << " ****欢迎使用高校人员信息管理系统****" << endl;
cout << " =================================" << endl;
cout << " | 1.教师管理 |" << endl;
cout << " | 2.学生管理 |" << endl;
cout << " | 3.行政人员管理 |" << endl;
cout << " | 0.退出 |" << endl;
cout << " =================================" << endl;
cout << "请选择:"; cin >> a;
switch (a) //用switch语句来判断输入的数字
{
case 1:Tea_mune(Teamer); break;
case 2:Stu_mune(Stumer); break;
case 3:Adm_mune(Admmer); break;
case 0:break;
default:cout << "\n error" << endl;
cout << "按回车键继续" << endl;
c = getchar();
break;
}
}
system("cls");
cout << endl << "谢谢使用" << endl;
c = getchar();
return 0;
}
大一时候的课设,有需要的同学可以参考一下
完整的源代码
不过最好用于借鉴而不是照抄哦
自己练习才有利于水平提高
有用的话就点个赞吧