高校人员信息管理系统由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“高校员工信息管理系统”。
高校人员信息管理系统
开发一个简易的高校人员信息管理系统,主要针对高校人员的基本信息进行管理。采用对象链表或对象数组存放各个对象,实现新增、修改、删除、查询以及统计等功能。
下面源代码用c++三段式格式实现** peo.h**
#ifndef _P #define _P cla person {
protected:
char number[30];//学号
char name[30];//姓名
char sex[30];//性别
int age;//年龄
char department[30];//部门
char tel[30];//联系方式
person *next;
// 基类的指针作为next指针 public: friend cla manage;person(char a[],char b[],char c[],int d,char e[],char f[]);~person();virtual void change(const char*)=0;virtual void display()=0;virtual void save()=0;};
cla student:public person //学生类 { protected: char grade[30];//班级
char major[30];//专业
double result;//成绩 public: student(char a[],char b[],char c[],int d,char e[],char f[],char g[],char h[],double i);~student();void save();void change(const char*);void display();//在派生类实现具体方法,即所谓的“多种方法” };
cla teacher:public person {
protected: char title[30];//职称
char major[30];//专业 public: teacher(char a[],char b[],char c[],int d,char e[],char f[],char j[],char k[]);~teacher();void save();void change(const char*);void display();//在派生类实现具体方法,即所谓的“多种方法” };
cla worker:public person {
protected: char job[30];//职务
char rank[30];//级别 public: worker(char a[],char b[],char c[],int d,char e[],char f[],char l[],char m[]);~worker();void save();
void change(const char*);void display();//在派生类实现具体方法,即所谓的“多种方法” };//template cla manage {
protected: static int count;//人员数量
person *head;
//链表头指针 public:
manage();~manage();void insert(person*);//添加人员信息
插入结点
void add();void search(const char*);//按学号查询信息
void del(const char*);//删除人员信息
void change(const char* s);//修改人员信息
void display();//显示
显示结点信息
void save();//保存
将所有人员信息写入到文件 };#endif //****************************
2**peo.cpp*************************// #include“peo.h” #include #include #include person::person(char a[],char b[],char c[],int d,char e[],char f[]){ strcpy(number,a);strcpy(name,b);strcpy(sex,c);age=d;strcpy(tel,f);strcpy(department,e);cout
student::student(char a[],char b[],char c[],int d,char e[],char f[],char g[],char h[],double i):person(a,b,c,d,e,f){ strcpy(grade,g);strcpy(major,h);result=i;} student::~student(){} void student::display(void){ cout
cout
void student::change(const char*){ cout
姓名
性别
年龄
部门
联系方式
班级
专业
成绩“>number>>name>>sex>>age>>department>>tel>>grade>>major>>result;}
teacher::teacher(char a[],char b[],char c[],int d,char e[],char f[],char j[],char k[]):person(a,b,c,d,e,f){ strcpy(title,j);strcpy(major,k);} teacher::~teacher(){} void teacher::display(void){ cout
cout
void teacher::change(const char*){ cout
姓名
性别
年龄
部门
联系方式
职称
专业”>number>>name>>sex>>age>>department>>tel>>title>>major;}
worker::worker(char a[],char b[],char c[],int d,char e[],char f[],char l[],char m[]):person(a,b,c,d,e,f){ strcpy(job,l);strcpy(rank,m);} void worker::display(void){ cout
void worker::save(){ fstream file1;file1.open(“worker.txt”,ios::out);if(!file1){
cout
void worker::change(const char*){ cout
姓名
性别
年龄
部门
联系方式
职务
级别“>number>>name>>sex>>age>>department>>tel>>job>>rank;}
/*******************************************************************************/ manage::manage(){ head=0;cout
void manage::insert(person *i){ person *node;if(head==0){
head=i;
head->next=0;} else {
node=head;
while(node->next)
node=node->next;
node->next=i;
i->next=0;} }
void manage::search(const char* s)//按学号查询人员信息 { person* node=head;int flog=0;while(node){
if(strcmp(node->number,s)==0)
{
flog=1;
node->display();//显示查询结果
break;
}
else
node=node->next;} if(flog){
// node->display();
cout
cout
void manage::del(const char* s)//按学号删除人员信息 { person *node1,*node2;int flog=0;node1=head;if(strcmp(head->number,s)==0){
head=head->next;
node1->~person();
flog=1;} else {
while(node1)
if(strcmp(node1->number,s)==0)
{
node2->next=node1->next;
node1->~person();
flog=1;
break;
}
else
{
node2=node1;
node1=node1->next;
}
} if(!flog)
cout
cout
cout
node=head;
while(node)
{
node->display();
node=node->next;
} }
} void manage::save(){ person *node;if(head==0)
cout
node=head;
while(node)
{
node->save();
node=node->next;
} } }
void manage::change(const char* s)//按学号修改人员信息 { person* node=head;int flog=0;while(node){
if(strcmp(node->number,s)==0)
{
flog=1;
node->change(s);//显示修改结果
break;
}
else
node=node->next;} if(flog){
// node->display();
cout
cout
void manage::add()
//添加人员信息 { cout
人员人员管信息
理系统
cout
请选择需要操作的对象:(选择其他则退出)”
1.学生“
2.老师”
3.职工“
cin>>i;
cout>number;cout>name;cout>sex;cout>age;cout>department;cout>tel;
if(i==1){ cout>grade>>major>>result;
a=new student(number,name,sex,age,department,tel,grade,major,result);
//table.insert(a);} if(i==2){ cout>title>>major;
a=new teacher(number,name,sex,age,tel,department,title,major);//table.insert(a);} if(i==3){ cout>job>>rank;
a=new worker(number,name,sex,age,tel,department,job,rank);//table.insert(a);} insert(a);save();
} display();cout #include #include #include int main()
{
int j=0,k=1;
char number[30]={0};
manage table;//定义一个对象
while(k)
{
system(”cls“);
cout
cout
请选择需要操作:(选择其他则退出)”
cout
1.添加人员信息“
cout
2.查询人员信息”
cout
3.删除人员信息“
cout
4.保存人员信息”
cout
5.显示人员信息“
cout
6.修改人员信息”
cin>>j;
switch(j)
{
//read(i);
case 1://添加
{
table.add();
//table.display();
}break;
case 2://查询
{
cout
cin>>number;
table.search(number);
}break;
case 3: //删除
{
cout
cin>>number;
table.del(number);
}break;
case 4://保存
{
cout
}break;
case 5://显示
{
table.display();
}break;
case 6://修改
{
cout
cin>>number;
table.change(number);
}break;
default:
system(“cls”);//清屏
break;
// return 0;
}
cout
0.退出操作
cin>>k;
}
}
继续操作“
1.
刑释解教人员信息管理系统乡镇(街道)司法所客户端操作说明 北京中和志远数码科技有限公司第一节系统简介一、系统概述刑释解教人员信息管理系统,主要功能是通过网络对刑释解教......
1.C++课程设计题目:《学校人员信息管理系统》用c++设计一个大学教师和学生管理程序,教师包括编号(a),姓名(c),职称(d)和教研室数据(b)的数据输入输出; 大学生包括编号(m),姓......
天保人员信息录入帮助手册1 系统登录界面图1-1 系统登录页面登录系统有两种选择。(1)选择【国家级实施方案内】。 可通过下拉框进行实施单位的选择。(2)选择【国家级实施方案外......
《信息系统分析与设计》期末考试 2010级信管专业1A班2012/2013学年第一学期系统分析与系统设计报告系统名称:高校学生公寓信息管理系统序号: 学号: 姓名:完成时间:2012年1月1日成......
劳务输出人员信息管理系统:(针对单一一个劳务输出公司)平台:myeclipse、SSH2(structs2、hibernate、spring)架构,JSP前台 系统主要功能需求:(1)普通会员可以浏览招聘信息,(选择有意向的......