人事管理系统源代码
高校人事管理系统C++程序设计源代码

目录新建一个头文件类,名字为:Person.h,再建一个源文件,名字随意,代码按顺序粘贴进去即可运行。
(2)头文件: (2)源文件: (2)新建一个头文件类,名字为:Person.h,再建一个源文件,名字随意,代码按顺序粘贴进去即可运行。
头文件:#include <iostream>#include <fstream>using namespace std;//基类class Person{public:char name[20];char sex[6];int age;char zzmm[10];char zgxl[10];int rzsj;int lysj;int gongzi;virtual void add(){cout<<"姓名:";cin>>name;cout<<"性别:";cin>>sex;cout<<"年龄:";cin>>age;cout<<"工资:";cin>>gongzi;cout<<"政治面貌:";cin>>zzmm;cout<<"最高学历:";cin>>zgxl;cout<<"任职时间:";cin>>rzsj;cout<<"来院时间:";cin>>lysj;}virtual void show(){cout<<"姓名:"<<name<<endl<<"性别:"<<sex<<endl<<"年龄:"<<age<<endl<<"工资:"<<gongzi<<endl<<"政治面貌:"<<zzmm<<endl<<"最高学历:"<<zgxl<<endl<<"任职时间:"<<rzsj<<endl<<"来院时间:"<<lysj<<endl;}virtual void save(fstream &f){f<<name<<" "<<sex<<" "<<age<<" "<<gongzi<<" "<<zzmm<<" "<<zgxl<<" "<<rzsj<<" "<<lysj<<" ";}virtual void read(fstream &f){f>>name>>sex>>age>>gongzi>>zzmm>>zgxl>>rzsj>>lysj;}};//行政人员class xzry:virtual public Person{public:char zhiwu[10];char jibie[10];int NOxz;void add(int &num1){num1++;NOxz=num1;cout<<"行政人员编号:"<<NOxz<<endl;Person::add();cout<<"职务:";cin>>zhiwu;cout<<"级别:";cin>>jibie;}void show(){cout<<"行政人员编号:"<<NOxz<<endl;Person::show();cout<<"职务:"<<zhiwu<<endl<<"级别:"<<jibie<<endl;}virtual void save(fstream &f){f<<NOxz<<" "; //记录正在输入的行政人员编号Person::save(f);f<<zhiwu<<" "<<jibie<<" "<<endl;}virtual void read(fstream &f){Person::read(f);f>>zhiwu>>jibie;}};//教师class jiaoshi:virtual public Person{public:char zhiwu[10];char zhicheng[10];int NOjs;void add(int &num2){num2++;NOjs=num2;cout<<"教师编号:"<<NOjs<<endl; Person::add();cout<<"职务:";cin>>zhiwu;cout<<"职称:";cin>>zhicheng;}void show(){cout<<"教师编号:"<<NOjs<<endl;Person::show();cout<<"职务:"<<zhiwu<<endl<<"职称:"<<zhicheng<<endl; }virtual void save(fstream &f){f<<NOjs<<" ";Person::save(f);f<<zhiwu<<" "<<zhicheng<<endl;}virtual void read(fstream &f){Person::read(f);f>>zhiwu>>zhicheng;}};//一般员工class ybyg:virtual public Person{public:char zhiwu[10];int NOyb;void add(int &num3){num3++;NOyb=num3;cout<<"一般员工编号:"<<NOyb<<endl; Person::add();cout<<"职务:";cin>>zhiwu;}void show(){cout<<"一般员工编号:"<<NOyb<<endl; Person::show();cout<<"职务:"<<zhiwu<<endl;}virtual void save(fstream &f){f<<NOyb<<" ";Person::save(f);f<<zhiwu<<" "<<endl;}virtual void read(fstream &f){Person::read(f);f>>zhiwu;}};//退休员工class tuixiu:virtual public Person //退休人员{public:int tuixiusj;int NOtx;void add(int &num4){num4++;NOtx=num4;cout<<"退休员工编号:"<<NOtx<<endl;Person::add();cout<<"退休时间:";cin>>tuixiusj;}void show(){cout<<"退休员工编号:"<<NOtx<<endl;Person::show();cout<<"退休时间:"<<tuixiusj<<endl; }virtual void save(fstream &f){f<<NOtx<<" ";Person::save(f);f<<tuixiusj<<" "<<endl;}virtual void read(fstream &f){Person::read(f);f>>tuixiusj;}};源文件:#include "Person.h"#include "string.h"#include <iostream>#include <fstream>using namespace std;int i1=0,i2=0,i3=0,i4=0; //定义总数int n1=0,n2=0,n3=0,n4=0; //定义编号xzry xz[100]; //定义行政人员100人jiaoshi js[100]; //定义教师人员100人ybyg yb[100]; //定义一般员工100人tuixiu tx[100]; //定义退休人员100人void addPerson(); //添加学院工作人员函数void FileSave(); //信息保存函数void FileRead(); //读取文件函数void findChange(); //查询并编辑工作人员信息函数void Delete(int j,int k); //删除函数void editPer(int v,int z); //编辑工作人员信息void findName(); //根据姓名查询函数void findNO(); //根据编号查询函数void tongji(); //统计函数//主函数void main(){FileRead();n1=i1;n2=i2;n3=i3;n4=i4;int a;while(1){cout<<"**********欢迎进入高校人事管理系统**************"<<endl; cout<<"* 输入选项进行选择*"<<endl; cout<<"* *"<<endl; cout<<"* 1、添加学院工作人员*"<<endl; cout<<"* 2、查询*"<<endl; cout<<"* 编辑*"<<endl; cout<<"* 删除工作人员信息*"<<endl; cout<<"* 3、人员统计*"<<endl;cout<<"* 4、退出程序*"<<endl; cout<<"* *"<<endl; cout<<"************************************************"<<endl; cout<<endl;cout<<"请选择:";cin>>a;system("cls");if (a==1){ addPerson(); }else if (a==2){ findChange(); }else if (a==3){ tongji(); }else if (a==4){ break; }else{cout<<"输入有误!请重试!"<<endl;cout<<endl;system ("pause");system ("cls");continue;}}}//添加学院工作人员函数void addPerson(){int b;while(1){cout<<"*******请选择人员工作岗位*********"<<endl; cout<<"* 1、行政人员*"<<endl; cout<<"* 2、教师*"<<endl; cout<<"* 3、一般员工*"<<endl; cout<<"* 4 、退休人员*"<<endl; cout<<"* 5、保存并退出*"<<endl; cout<<"**********************************"<<endl; cout<<endl<<"要添加请选择,不添加请选退出:"; cin>>b; cout<<endl;system("cls");if (b==1) //添加行政人员{xz[i1].add(n1);}else if(b==2) //添加教师{js[i2].add(n2);i2++;}else if(b==3) //添加一般员工{yb[i3].add(n3);i3++;}else if(b==4) //添加退休人员{tx[i4].add(n4);i4++;}else if(b==5){FileSave();break;}{cout<<"输入有误!请重试!"<<endl;cout<<endl;system ("pause");system ("cls");continue;}}}//信息保存函数void FileSave(){int k;fstream file;file.open("data.dat", ios::out);file<<i1<<endl; //保存已输入的行政人员总数for(k=0;k<i1;k++)xz[k].save(file);file<<endl;file<<i2<<endl; //保存已输入的教师人员总数for(k=0;k<i2;k++)js[k].save(file);file<<endl;file<<i3<<endl; //保存已输入的一般员工总数for(k=0;k<i3;k++)yb[k].save(file);file<<endl;file<<i4<<endl; //保存已输入的退休人员总数for(k=0;k<i4;k++)tx[k].save(file);file<<endl;file.close();}//读取文件函数void FileRead(){int k;fstream file;file.open("data.dat", ios::in);file>>i1; //读取行政人员总数for(k=0;k<i1;k++){file>>xz[k].NOxz; //读取行政人员编号xz[k].read(file);}file>>i2; //读取教师人员总数for(k=0;k<i2;k++){file>>js[k].NOjs; //读取教师人员编号js[k].read(file);}file>>i3; //读取一般员工总数for(k=0;k<i3;k++){file>>yb[k].NOyb; //读取一般员工编号yb[k].read(file);}file>>i4; //读取退休人员总数for(k=0;k<i4;k++){file>>tx[k].NOtx; //读取退休人员编号tx[k].read(file);}file.close();}//查询并编辑工作人员信息void findChange(){int e;while(1){cout<<"****************************"<<endl;cout<<"* 1、编号查询*"<<endl;cout<<"* 2、姓名查询*"<<endl; cout<<"* 3、退出*"<<endl; cout<<"****************************"<<endl; cout<<"请选择:";cin>>e; cout<<endl;system("cls");if (e==1){findNO();}else if (e==2){findName();}else if (e==3){break;}else{cout<<"输入有误!请重试!"<<endl;system ("pause");system ("cls");continue;}}}//根据编号查询函数void findNO(){int f,g,z;int h;while(1){cout<<"========请输入查询人所在的分类========"<<endl; cout<<" 1、行政人员"<<endl;cout<<" 2、教师人员"<<endl;cout<<" 3、一般员工"<<endl;cout<<" 4、退休人员"<<endl;cout<<" 5、退出"<<endl;cout<<"==================================== =="<<endl;cout<<"请输入:";cin>>f;cout<<endl;system("cls");if (f==1)cout<<"========行政人员查询========"<<endl; cout<<"请输入查询的编号:";cin>>g;for(int t1=0;t1< i1;t1++){if(xz[t1].NOxz==g){h=g-1;xz[h].show();z=1;editPer(g,z); //是否编辑Delete(g,z); //是否删除}}}else if (f==2){cout<<"========教师人员查询========"<<endl; cout<<"请输入查询的编号:";cin>>g;for(int t2=0;t2< i2;t2++){if(js[t2].NOjs==g)h=g-1;js[h].show();z=2;editPer(g,z); //是否编辑Delete(g,z); //是否删除}}}else if (f==3){cout<<"========一般员工查询========"<<endl; cout<<"请输入查询的编号:";cin>>g;for(int t3=0;t3< i3;t3++){if(yb[t3].NOyb==g){h=g-1;yb[h].show();z=3;editPer(g,z); //是否编辑Delete(g,z); //是否删除}}else if (f==4){cout<<"========退休人员查询========"<<endl; cout<<"请输入查询的编号:";cin>>g;for(int t4=0;t4< i4;t4++){if(tx[t4].NOtx==g){h=g-1;tx[h].show();z=4;editPer(g,z); //是否编辑Delete(g,z); //是否删除}}}else if (f==5){break;}elsecout<<"输入有误!请重试!"<<endl;system ("pause");system ("cls");continue;}}}//根据姓名查询函数void findName(){char s;char nam[20];int x;while(1){cout<<"=========正在通过姓名进行查询========="<<endl<<endl;cout<<"请输入查询的姓名:";cin>>nam;for(int t=0;t<(i1+i2+i3+i4);t++){if(strcmp(xz[t].name,nam)==0){xz[t].show();x=1;editPer(xz[t].NOxz,x); //是否编辑Delete(xz[t].NOxz,x); //是否删除cout<<endl;}else if(strcmp(js[t].name,nam)==0){js[t].show();x=2;editPer(js[t].NOjs,x); //是否编辑Delete(js[t].NOjs,x); //是否删除cout<<endl;}else if(strcmp(yb[t].name,nam)==0){yb[t].show();x=3;editPer(yb[t].NOyb,x); //是否编辑Delete(yb[t].NOyb,x); //是否删除cout<<endl;}else if(strcmp(tx[t].name,nam)==0){tx[t].show();x=4;editPer(tx[t].NOtx,x); //是否编辑Delete(tx[t].NOtx,x); //是否删除cout<<endl;}elsecontinue;}cout<<"是否继续查询或修改(y/n)"<<endl;cin>>s;if(s=='y'||s=='Y') continue;else break;}}//编辑工作人员信息void editPer(int v,int z){char su1;char su2;n1=v-1;n2=v-1;n3=v-1;n4=v-1;while(1){cout<<endl<<"是否进行修改(y/n)"<<endl; cin>>su1;if(su1=='y'||su1=='Y'){if(z==1){xz[n1].add(n1);cout<<endl<<"是否保存(y/n)"<<endl; cin>>su2;if(su2=='y'||su2=='Y'){FileSave();}else break;}if(z==2){js[n2].add(n2);cout<<endl<<"是否保存(y/n)"<<endl; cin>>su2;if(su2=='y'||su2=='Y'){FileSave();}else break;}if(z==3){yb[n3].add(n3);cout<<endl<<"是否保存(y/n)"<<endl; cin>>su2;if(su2=='y'||su2=='Y'){FileSave();}else break;}if(z==4){tx[n4].add(n4);cout<<endl<<"是否保存(y/n)"<<endl; cin>>su2;if(su2=='y'||su2=='Y'){FileSave();}else break;}}else break;break;}}//删除函数void Delete(int j,int k){char su4;int jg=j;n1=j;n2=j;n3=j;n4=j;while(1){cout<<endl<<"是否删除(y/n)"<<endl;cin>>su4;if(su4=='y'||su4=='Y'){if(k==1){for(;n1<i1;n1++){xz[n1-1]=xz[n1]; //删除搜索的行政人员信息xz[n1-1].NOxz--; //信息删除后编号重排}i1--;FileSave();cout<<"=====你所查询编号为"<<jg<<"的行政人员信息已删除====="<<endl<<endl;system("pause");system("cls");}if(k==2){for(;n2<i2;n2++){js[n2-1]=js[n2]; //删除搜索的教师信息js[n2-1].NOjs--; //信息删除后编号重排}i2--;FileSave();cout<<"=====你所查询编号为"<<jg<<"的教师信息已删除====="<<endl<<endl;system("pause");system("cls");}if(k==3){for(;n3<i3;n3++){yb[n3-1]=yb[n3]; //删除搜索的一般员工信息yb[n3-1].NOyb--; //信息删除后编号重排}i3--;FileSave();cout<<"=====你所查询编号为"<<jg<<"的一般员工信息已删除====="<<endl<<endl;system("pause");system("cls");}if(k==4){for(;n4<i4;n4++){tx[n4-1]=tx[n4]; //删除搜索的退休员工信息tx[n4-1].NOtx--; //信息删除后编号重排}i4--;FileSave();cout<<"=====你所查询编号为"<<jg<<"的退休员工信息已删除====="<<endl<<endl;system("pause");system("cls");}else break;}break;}}void tongji() //人事统计while(1){int z,i;int g=0;cout<<"请输入要统计的类型:1.在职人员 2.党员 3.女性人员 4.高学历高职称人员"<<endl;int r;cin>>r;if(r==1){z=i1+i2+i3;cout<<"在职人员数:"<<z<<endl;}else if(r==2){for(i=0;i<i1;i++){if(strcmp(xz[i].zzmm ,"党员")==0)g++;}for(i=0;i<i2;i++)if(strcmp(js[i].zzmm,"党员")==0) g++;}for(i=0;i<i3;i++){if(strcmp(yb[i].zzmm,"党员")==0) g++;}for(i=0;i<i4;i++){if(strcmp(tx[i].zzmm,"党员")==0) g++;}cout<<"党员数:"<<g<<endl; }else if(r==3){for(i=0;i<i1;i++){if(strcmp(xz[i].sex,"女")==0)g++;for(i=0;i<i2;i++){if(strcmp(js[i].sex,"女")==0)g++;}for(i=0;i<i3;i++){if(strcmp(yb[i].sex,"女")==0)g++;}for(i=0;i<i4;i++){if(strcmp(tx[i].sex,"女")==0)g++;}cout<<"女性人员数:"<<g<<endl; }else if(r==4){int g=0,h=0,c=0;for(i=0;i<i1;i++)if(strcmp(xz[i].zgxl,"大学")==0) g++;}for(i=0;i<i2;i++){if(strcmp(js[i].zgxl,"大学")==0) g++;}for(i=0;i<i3;i++){if(strcmp(yb[i].zgxl,"大学")==0) g++;}for(i=0;i<i4;i++){if(strcmp(tx[i].zgxl,"大学")==0) g++;}for(i=0;i<i1;i++){if(strcmp(xz[i].zgxl,"高中")==0)h++;}for(i=0;i<i2;i++){if(strcmp(js[i].zgxl,"高中")==0) h++;}for(i=0;i<i3;i++){if(strcmp(yb[i].zgxl,"高中")==0) h++;}for(i=0;i<i4;i++){if(strcmp(tx[i].zgxl,"高中")==0) h++;}for(i=0;i<i1;i++){if(strcmp(xz[i].zgxl,"初中")==0) h++;}for(i=0;i<i2;i++){if(strcmp(js[i].zgxl,"初中")==0)h++;}for(i=0;i<i3;i++){if(strcmp(yb[i].zgxl,"初中")==0)h++;}for(i=0;i<i4;i++){if(strcmp(tx[i].zgxl,"初中")==0)h++;}cout<<"大学人数:"<<g<<" 高中人数:"<<h<<" 初中人数:"<<c<<endl;}else{cout<<"统计的类型错误!"<<endl;system("PAUSE");. ... .}cout<<"是否继续人事统计:Y继续、其他退出"<<endl;char x;cin>>x;if(x!='y' && x!='Y')break;}}. word ..。
人力资源管理系统代码

timAmRingOutTime dateTime,--下班时间
timsAmOnStatus varchar(10),--上班状态(迟到,早退,旷工,请假,出差, 正常(默认))
timsAmRingStatus varchar(10),--下班状态(迟到,早退,旷工,请假,出差, 正常(默认))
(
traId int identity(1,1) primary key not null,--标识列
traDeptNumId int,--我方部门编号(外键)
traDeptId int,--对方部门编号(外键)
traEmpId int,--申请人(外键)
traEmpNum int,--调用的对方员工(外键)
traContent varchar(800),--申请调用内容
tralyTime datetime,--申请时间
traStatus int,--审批状态(0:正在审批中,1:审批通过,2:审批未通过)
trsEmpName int,--审批人(外键)
traTime dateTime,--审批时间
(
useId int identity(1,1) primary key not null,--标识列
useName varchar(50),--状态名称(试用期,正式员工,离职员工,退休员工)
useState int ,--状态(0:表示正常使用中,1:表示已冻结)
useRemark text--备注
use master
if exists(select * from sysdatabases where name='HR_System')
人事管理系统数据库源代码

using System;using System.Collections;using System.Configuration;using System.Data;using System.Linq;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Xml.Linq;namespace WebApplication1{public partial class WebForm1 : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){}protected void Button1_Click(object sender, EventArgs e) {Response.Redirect("~/登录.aspx");}protected void Button2_Click(object sender, EventArgs e) {Response.Redirect("~/人员信息查询.aspx");}protected void Button3_Click(object sender, EventArgs e){Response.Redirect("~/人员修改.aspx");}protected void Button4_Click(object sender, EventArgs e) {Response.Redirect("~/部门信息.aspx");}protected void Button5_Click(object sender, EventArgs e) {Response.Redirect("~/工资信息.aspx");}}}using System;using System.Collections;using System.Configuration;using System.Data;using System.Linq;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Xml.Linq;using System.Data.SqlClient;namespace WebApplication1{public partial class部门信息 : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){}protected void Button1_Click(object sender, EventArgs e){bool find =false;SqlConnection con=new SqlConnection("server=localhost;Integrated Security=SSPI;database=人事管理系统");con.Open();string cmdstr="select * from 部门表";SqlDataAdapter da=new SqlDataAdapter(cmdstr,con);DataSet ds=new DataSet();da.Fill(ds);for(int i=0;i<ds.Tables[0].Rows.Count;i++){for(int j=0;j<ds.Tables[0].Columns.Count;j++){String data=(ds.Tables[0].Rows[i][j].ToString()).Trim();if(data==TextBox1.Text.Trim()){TextBox2.Text=ds.Tables[0] .Rows[i]["部门代码"].ToString();TextBox3.Text=ds.Tables[0] .Rows[i]["部门名称"].ToString();find=true;}}}if (find == false){Response.Write("<script>window.alert('没有有关记录!')</script>"); con.Close();}}protected void Button2_Click(object sender, EventArgs e){Response.Redirect("~/Default.aspx");}}}using System;using System.Collections;using System.Configuration;using System.Data;using System.Linq;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Xml.Linq;using System.Data.SqlClient;using System.Data.SqlTypes;namespace WebApplication1{public partial class_Default : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){}protected void TextBox1_TextChanged(object sender, EventArgs e){}protected void Button1_Click(object sender, EventArgs e){SqlConnection con = new SqlConnection("server=localhost;IntegratedSecurity=SSPI;database=人事管理系统");string strCount;strCount = "select * from 人事表"; con.Open();SqlCommand com = new SqlCommand(strCount, con);SqlDataReader dr = com.ExecuteReader();string strUsername = "", strPassword = "";while (dr.Read()){if (TextBox1.Text == dr["编号"].ToString()||TextBox2.Text == dr["顾客密码"].ToString()){strUsername = dr["编号"].ToString();strPassword = dr["顾客密码"].ToString();break;}}dr.Close();con.Close();if (strUsername == ""){Response.Write("<script language=javascript>alert('登录成功!');</script>");return;}}protected void Button2_Click(object sender, EventArgs e){Response.Redirect("~/Default.aspx");}}}using System;using System.Collections;using System.Configuration;using System.Data;using System.Linq;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Xml.Linq;using System.Data.SqlClient;namespace WebApplication1{public partial class工资信息 : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){}protected void TextBox2_TextChanged(object sender, EventArgs e){}protected void TextBox5_TextChanged(object sender, EventArgs e){}protected void Button1_Click(object sender, EventArgs e){bool find = false;SqlConnection con = new SqlConnection("server=localhost;Integrated Security=SSPI;database=人事管理系统");con.Open();string cmdstr = "select * from 工资表";SqlDataAdapter da = new SqlDataAdapter(cmdstr, con);DataSet ds = new DataSet();da.Fill(ds);for (int i = 0; i < ds.Tables[0].Rows.Count; i++){for (int j = 0; j < ds.Tables[0].Columns.Count; j++){String data = (ds.Tables[0].Rows[i][j].ToString()).Trim();if (data == TextBox1.Text.Trim()){TextBox2.Text = ds.Tables[0].Rows[i]["应发工资"].ToString(); TextBox3.Text = ds.Tables[0].Rows[i]["岗位津贴"].ToString(); TextBox4.Text = ds.Tables[0].Rows[i]["奖励"].ToString();TextBox5.Text = ds.Tables[0].Rows[i]["保险"].ToString();find = true;}}}if (find == false){Response.Write("<script>window.alert('没有有关记录!')</script>");con.Close();}}protected void Button2_Click(object sender, EventArgs e){Response.Redirect("~/Default.aspx");}}}using System;using System.Collections;using System.Configuration;using System.Data;using System.Linq;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Xml.Linq;using System.Data.SqlClient;namespace WebApplication1{public partial class人员信息 : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){}protected void Button1_Click(object sender, EventArgs e){Response.Redirect("~/Default.aspx");}protected void Button2_Click(object sender, EventArgs e){bool find =false;SqlConnection con = new SqlConnection("server=localhost;Integrated Security=SSPI;database=人事管理系统");con.Open();string cmdstr="select * from 工资表";SqlDataAdapter da=new SqlDataAdapter(cmdstr,con);DataSet ds=new DataSet();da.Fill(ds);for(int i=0;i<ds.Tables[0].Rows.Count;i++){for(int j=0;j<ds.Tables[0].Columns.Count;j++){String data=(ds.Tables[0].Rows[i][j].ToString()).Trim();if(data==TextBox1.Text.Trim()){TextBox2.Text=ds.Tables[0] .Rows[i]["应发工资"].ToString();TextBox3.Text=ds.Tables[0] .Rows[i]["岗位津贴"].ToString();TextBox4.Text=ds.Tables[0] .Rows[i]["奖励"].ToString();TextBox5.Text = ds.Tables[0].Rows[i]["保险"].ToString();find=true;}}}if (find == false){Response.Write("<script>window.alert('没有有关记录!')</script>"); con.Close();}}}}using System;using System.Collections;using System.Configuration;using System.Data;using System.Linq;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Xml.Linq;using System.Data.SqlClient;namespace WebApplication1{public partial class人员修改 : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){}protected void TextBox5_TextChanged(object sender, EventArgs e){}protected void Button2_Click(object sender, EventArgs e){SqlConnection con=new SqlConnection("server=localhost;IntegratedSecurity=SSPI;database=人事管理系统");con.Open();string insert="insert into 人事表(员工号,姓名,性别,职称,学历) values("+""+ TextBox1.Text.Trim() +""+","+"" + TextBox2.Text.Trim() +""+","+ TextBox3.Text.Trim() + "," +""+ TextBox4.Text.Trim() +""+","+"" +TextBox5.Text.Trim() + ""+")";Response.Write(insert);SqlCommand cmd1=new SqlCommand(insert,con);con.Close();}protected void Button1_Click(object sender, EventArgs e){Response.Redirect("~/Default.aspx");}protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) {}}}。
人力资源管理系统代码 ASP

<!--#include file=DataBase/conn.asp--><%If request("action")="login" thenadmin_name=request("admin_name")'获取用户名admin_pass=request("admin_pass")'获取密码username=trim(request("admin_name"))password=trim(request("admin_pass"))for i=1 to len(username)user=mid(username,i,1)if user="'" or user="%" or user="<" or user=">" or user="&" or user="|" thenresponse.write "<script language=JavaScript>" & "alert('您的用户名含有非法字符,请重新输入!');" & "history.back()" & "</script>"response.endend ifnextfor i=1 to len(password)pass=mid(password,i,1)if pass="'" or pass="%" or pass="<" or pass=">" or upass="&" or pass="|" then response.write "<script language=JavaScript>" & "alert('您的密码含有非法字符,请重新输入!');" & "history.back()" & "</script>"response.endend ifnextset rs=server.CreateObject("adodb.recordset")sql="select * from tb_User where username='"&admin_name&"'and userpwd='"&admin_pass&"' "rs.open sql,conn,1,1if rs.eof then response.write "<br><br><br><br><font size=2><center>对不起,您输入的用户名或密码,请重新输入,谢谢!<a href=login.asp>返回</a></font>"else session("admin_name")=request("admin_name") response.Redirect("index.asp")'跳转到管理首页end ifrs.closeset rs=nothingconn.closeset conn=nothingend if%>6 首页设计网站首页主要由两部部分组成,一部分是管理导航区,另一部分是展示区。
人员信息管理系统源代码

#include<stdio.h>/*人员信息管理系统*/#include<string.h>#include<malloc.h>#include<stdlib.h>#define Max 10000typedef struct Node{int NO; // 编号char name[30]; // 姓名char sex[10]; // 性别int age; // 年龄char ZhiWu[30]; // 职务char Zhicheng[30]; //职称char ZZMM[30]; // 政治面貌char XueLi[30]; // 最高学历int OnTime; // 任职时间int CTime; // 来院时间char RenLB[30]; // 人员类别}Worker;Worker Q[Max];int top;int cnt = 0;int Insert() //输入人员信息{Worker *q;if( ( q = (Worker *)malloc( sizeof( Worker) ) ) == NULL )exit(0); printf( "请依次输入:编号,姓名,性别,年龄,职务,职称,政治面貌,最高学历,任职时间,来院时间,人员类别\n" );scanf( "%d %s %s %d %s %s %s %s %d %d %s", &(q->NO), q->name, q->sex, &(q->age), q->ZhiWu, q->Zhicheng, q->ZZMM, q->XueLi, &(q->OnTime), &(q->CTime), q->RenLB );Q[top++] = (*q);printf( "已加入\n" );return top;}int Delete() //按编号删除人员信息{int NO;int i, j, ok = 0;printf( "请依次输入: 编号\n" );scanf( "%d", &NO );for( i = 0; i < top; i++ ){if( Q[i].NO ==NO ){for( j = i+1; j < top; j++ ){Q[j-1] = Q[j];}top--;ok = 1;break;}}if( ok == 0 )printf( "无此人\n" );else printf( "已删除\n" );return top;}void Search() //搜索人员信息{int NO;char name[30];int i, ok = 0;Worker *q;printf( "请依次输入: 编号和姓名\n" );scanf( "%d %s", &NO, name );for( i = 0; i < top; i++ ){if( Q[i].NO ==NO && strcmp( Q[i].name, name ) == 0 ) {ok = 1;break;}}q = &(Q[i]);if( ok == 0 )printf( "无此人\n" );else{printf( "该人信息为:\n" );printf( "%d %s %s %d %s %s %s %s %d %d %s\n", (q->NO), q->name, q->sex, (q->age), q->ZhiWu, q->Zhicheng, q->ZZMM, q->XueLi,(q->OnTime), (q->CTime), q->RenLB );}}void Sort(Worker *Q) //按要求进行排序分类{int way,i,j,flag=1;Worker temp;printf( "输入按什么排序:1 --- 年龄; 2 ---- 来院时间\n" );scanf( "%d", &way );if( way == 1 ){for(i=1;i<top&&flag==1;i++){flag=0;for(j=0;j<top-i;j++){if(Q[j].age>Q[j+1].age){flag=1;temp=Q[j];Q[j]=Q[j+1];Q[j+1]=temp;}}for(i=0;i<cnt;i++)printf( "%d %s %s %d %s %s %s %s %d %d %s\n", (Q[i].NO),Q[i].name, Q[i].sex, (Q[i].age),Q[i].ZhiWu, Q[i].Zhicheng, Q[i].ZZMM, Q[i].XueLi, (Q[i].OnTime), (Q[i].CTime), Q[i].RenLB );}}else if( way == 2 ){for(i=1;i<top&&flag==1;i++){flag=0;for(j=0;j<top-i;j++){if(Q[j].CTime>Q[j+1].CTime){flag=1;temp=Q[j];Q[j]=Q[j+1];Q[j+1]=temp;}}for(i=0;i<cnt;i++)printf( "%d %s %s %d %s %s %s %s %d %d %s\n", (Q[i].NO),Q[i].name, Q[i].sex, (Q[i].age),Q[i].ZhiWu, Q[i].Zhicheng, Q[i].ZZMM, Q[i].XueLi, (Q[i].OnTime), (Q[i].CTime), Q[i].RenLB );}for(i=0;i<cnt;i++)printf( "%d %s %s %d %s %s %s %s %d %d %s\n", (Q[i].NO),Q[i].name, Q[i].sex, (Q[i].age),Q[i].ZhiWu, Q[i].Zhicheng, Q[i].ZZMM, Q[i].XueLi, (Q[i].OnTime), (Q[i].CTime), Q[i].RenLB );}}void COUNT_1() //统计在职人数{int i;for( i = 0; i < top; i++ ){if( strcmp( Q[i].RenLB, "退休人员" ) != 0 &&strcmp( Q[i].RenLB, "临时工" ) != 0 ){Worker *q;q = &(Q[i]);cnt++;printf( "%d %s %s %d %s %s %s %s %d %d %s\n", (q->NO), q->name, q->sex, (q->age), q->ZhiWu, q->Zhicheng, q->ZZMM, q->XueLi, (q->OnTime), (q->CTime), q->RenLB );}}printf( "共有%d 在职人数\n", cnt );}void COUNT_2() //统计党员人数{int i;for( i = 0; i < top; i++ ){if( strcmp( Q[i].ZZMM, "党员" ) == 0 ){Worker *q;q = &(Q[i]);cnt++;printf( "%d %s %s %d %s %s %s %s %d %d %s\n", (q->NO), q->name, q->sex, (q->age), q->ZhiWu, q->Zhicheng, q->ZZMM, q->XueLi, (q->OnTime), (q->CTime), q->RenLB );}}printf( "共有%d 党员\n", cnt );}void COUNT_3() // 统计女工人数{int i;for( i = 0; i < top; i++ ){if( strcmp( Q[i].sex, "女" ) == 0 ){Worker *q;q = &(Q[i]);cnt++;printf( "%d %s %s %d %s %s %s %s %d %d %s\n", (q->NO), q->name, q->sex, (q->age), q->ZhiWu, q->Zhicheng, q->ZZMM, q->XueLi, (q->OnTime), (q->CTime), q->RenLB );}}printf( "共有%d 女性员工\n", cnt );}void COUNT_4() //统计高学历人数{int i;for( i = 0; i < top; i++ ){if( strcmp( Q[i].XueLi, "研究生" ) == 0|| strcmp( Q[i].XueLi, "副教授" ) == 0|| strcmp( Q[i].XueLi, "教授" ) == 0|| strcmp( Q[i].XueLi, "院士" ) == 0|| strcmp( Q[i].XueLi, "博士" ) == 0|| strcmp( Q[i].XueLi, "博士后" ) == 0|| strcmp( Q[i].XueLi, "助理教授" ) == 0 ){Worker *q;q = &(Q[i]);cnt++;printf( "%d %s %s %d %s %s %s %s %d %d %s\n", (q->NO), q->name, q->sex, (q->age), q->ZhiWu, q->Zhicheng, q->ZZMM, q->XueLi, (q->OnTime), (q->CTime), q->RenLB );}printf( "共有%d 高学历员工\n", cnt );}void Count() //统计函数{int way;printf( "输入按什么统计:1 --- 在职人数; 2 --- 党员人数;3 --- 女工人数;4 --- 高学历高职称人数: \n" );printf( "输入统计关键字:" );scanf( "%d", &way );switch( way ){case 1: COUNT_1(); break;case 2: COUNT_2(); break;case 3: COUNT_3(); break;case 4: COUNT_4(); break;}}void Edit() // 编辑存储功能{}int main(){int way;top = 0;printf( "\n\n" );printf( "****************************************************************** **\n" );printf( " * 1:添加人员,输入人员相关信息*\n" );printf( " * 2: 删除人员,提供职工号*\n" );printf( " * 3: 查询提供编号和姓名*\n" );printf( " * 4: 统计提供相应方式对应输入*\n" );printf( " * 5: 排序,按程序要求提供相应的关键字*\n" );printf( " * 6: 编辑存储*\n" );printf( "****************************************************************** **\n" );while( 1 ){printf( "输入需要操作:way = " ); // 选择功能if( scanf( "%d", &way ) == EOF )break; // 以 ctrl + Z 结束输入switch(way){case 1: Insert(); break;case 2: Delete(); break;case 3: Search(); break;case 4: Count(); break;case 5: Sort(Q); break;case 6: Edit(); break;}}return 0;}。
python人员信息管理系统源代码

Python人员信息管理系统源代码一、介绍人员信息管理系统是一种用于管理和存储人员信息的软件系统。
它可以帮助组织和企业更好地管理员工、学生或其他成员的个人信息。
本文将介绍一个使用Python 编写的人员信息管理系统的源代码。
二、系统功能人员信息管理系统通常具有以下功能:1.添加人员信息:可以输入人员的姓名、性别、年龄、联系方式等基本信息,并将其保存到系统中。
2.删除人员信息:可以根据人员的姓名或其他标识符删除系统中的人员信息。
3.修改人员信息:可以修改已有人员的信息,如联系方式、年龄等。
4.查询人员信息:可以根据人员的姓名或其他标识符查询系统中的人员信息。
5.显示所有人员信息:可以将系统中的所有人员信息以列表或表格的形式展示出来。
三、源代码实现以下是一个使用Python编写的人员信息管理系统的源代码示例:class Person:def __init__(self, name, gender, age, contact): = nameself.gender = genderself.age = ageself.contact = contactclass PersonManagementSystem:def __init__(self):self.persons = []def add_person(self, person):self.persons.append(person)def delete_person(self, name):for person in self.persons:if == name:self.persons.remove(person)breakdef modify_person(self, name, new_contact):for person in self.persons:if == name:person.contact = new_contactbreakdef search_person(self, name):for person in self.persons:if == name:return persondef display_all_persons(self):for person in self.persons:print("Name:", )print("Gender:", person.gender)print("Age:", person.age)print("Contact:", person.contact)print("")# 示例用法system = PersonManagementSystem()person1=Person("Alice","Female",25,"*****************") person2=Person("Bob","Male",30,"***************")system.add_person(person1)system.add_person(person2)system.display_all_persons()system.modify_person("Alice","********************")person = system.search_person("Bob")if person:print("Name:", )print("Gender:", person.gender)print("Age:", person.age)print("Contact:", person.contact)else:print("Person not found.")system.delete_person("Alice")system.display_all_persons()四、系统使用示例以下是一个使用该人员信息管理系统的示例:1.添加人员信息:Name: AliceGender: FemaleAge: 25Contact:*****************Name: BobGender: MaleAge: 30Contact:***************2.修改人员信息:Name: AliceGender: FemaleAge: 25Contact:********************3.查询人员信息:Name: BobGender: MaleAge: 30Contact:***************4.删除人员信息:Name: BobGender: MaleAge: 30Contact:***************五、总结通过编写这个人员信息管理系统的源代码,我们可以更好地理解和应用面向对象编程的概念和技巧。
人力资源管理系统源代码

1)登陆窗体代码设计窗体代码主要实现了连接数据库的功能,这里用于连接用户信息表。
其程序如下:Private Sub Form_Load()Dim i As IntegerIf App.PrevInstance ThenMsgBox ("程序已经运行,不能再次装载。
"), vbExclamationUnload MeEnd If'本段代码用于判定本程序是否已经装载于内存中,以避免程序的多重启动i = 0Open App.Path + "\user.ini" For Input As #1Do While Not EOF(1)Input #1, user(i), pws(i), state(i), Emplo(i)If state(i) = "A" ThenCombo1.AddItem user(i)End Ifi = i + 1Loop Close #1Combo1.ListIndex = 1'在窗口装载阶段读取用户设置文件获取用户信息并装载于用户列表框中End Sub(2)“取消”按钮是退出登录界面,退出系统的。
其代码如下:Private Sub CmdCancel_Click()Unload MeEndEnd Sub(3)“确定”按钮代码设计“确定”按钮代码主要实现了用户登陆时,用户名和密码的认证,当用户名或密码错误时,系统提示错误。
其程序如下:Private Sub cmdOK_Click()If txtPassword = pws(Combo1.ListIndex) ThenCurId = Combo1.ListIndexEmploID = Emplo(CurId)CurUser = user(CurId)CurPsw = pws(CurId)Me.Hide'Load FrmMainFrmMain.ShowElse MsgBox "Invalid Password, try again!", , "Login"txtPassword.SetFocusSendKeys "{Home}+{End}"End If End Sub(1)窗体选择的单击事件代码设计窗体选择的单击事件代码主要实现了进入本系统所有模块的功能,这里有以下几个模块,它们分别是员工信息模块,假条信息模块,工资管理模块,用户设置模块等/其程序如下:Private Sub Toolbar2_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case Button.IndexCase 1Call showemployee ‘显示员工信息模块Case 2Call showleave ‘显示假条信息模块Case 3Call showsalary ‘显示工资信息模块Case 4If frmLogin.CurUser = "root" ThenFrmSys.ShowElseFrmPsw.ShowPwin = "Frmmain"FrmMain.Enabled = FalseEnd IfEnd SelectEnd Sub(2)命令按钮的单击事件代码设计命令按钮的代码主要实现了进入本系统部分主要模块的功能,这里有以下几个功能,它们分别是编辑,删除,查询,设置。
python人员信息管理系统源代码

python人员信息管理系统源代码Python人员信息管理系统源代码简介本文介绍了一个基于Python的人员信息管理系统的源代码,该系统可以实现人员信息的添加、修改、删除和查询等功能。
技术栈- Python 3.8.5- SQLite3- tkinter功能模块1. 数据库连接模块该模块用于连接SQLite3数据库,并创建一个名为“person.db”的数据库。
2. 数据库表创建模块该模块用于创建一个名为“person_info”的表,该表包含以下字段:id、name、age、gender和address。
3. 添加人员信息模块该模块用于向数据库中添加一条人员信息记录,包括姓名、年龄、性别和地址。
4. 修改人员信息模块该模块用于修改数据库中已有的一条人员信息记录,可以修改姓名、年龄、性别和地址。
5. 删除人员信息模块该模块用于从数据库中删除一条已有的人员信息记录,根据id进行删除。
6. 查询人员信息模块该模块用于查询数据库中所有的人员信息记录,并将结果显示在窗口中。
源代码实现1. 数据库连接实现:import sqlite3def connect_db():conn = sqlite3.connect("person.db") cursor = conn.cursor()return conn, cursordef close_db(conn, cursor):cursor.close()conn.close()2. 数据库表创建实现:def create_table():conn, cursor = connect_db()sql = '''create table person_info(id integer primary key autoincrement,name text,age integer,gender text,address text)'''cursor.execute(sql)mit()close_db(conn, cursor)3. 添加人员信息实现:def add_person(name, age, gender, address):conn, cursor = connect_db()sql = "insert into person_info(name, age, gender, address) values(?, ?, ?, ?)"cursor.execute(sql, (name, age, gender, address))mit()close_db(conn, cursor)4. 修改人员信息实现:def update_person(id_, name=None, age=None, gender=None, address=None):conn,cursor=connect_db()sql="update person_info set"if name is not None:sql+=" name='{}',".format(name)if age is not None:sql+=" age='{}',".format(age)if gender is not None:sql+=" gender='{}',".format(gender)if address is not None:sql+=" address='{}',".format(address)# 去掉最后一个逗号sql=sql[:-1]# 根据id更新sql+="where id={}".format(id_)cursor.execute(sql)mit()close_db(conn,cursor)5. 删除人员信息实现:def delete_person(id_):conn,cursor=connect_db()sql="delete from person_info where id={}".format(id_)cursor.execute(sql)mit()close_db(conn,cursor)6. 查询人员信息实现:def query_all_person():conn,cursor=connect_db()sql="select * from person_info"cursor.execute(sql)# 获取所有查询结果result=cursor.fetchall()close_db(conn,cursor)return result7. 界面实现:import tkinter as tkimport tkinter.messagebox as messageboxclass Application(tk.Frame):def __init__(self, master=None):super().__init__(master)self.master = masterself.pack()self.create_widgets()def create_widgets(self):# 添加人员信息部分self.add_label = bel(self, text="添加人员信息") self.add_label.grid(row=0, column=0)_label = bel(self, text="姓名")_label.grid(row=1, column=0)_entry = tk.Entry(self)_entry.grid(row=1, column=1)self.age_label = bel(self, text="年龄")self.age_label.grid(row=2, column=0)self.age_entry = tk.Entry(self)self.age_entry.grid(row=2, column=1)self.gender_label = bel(self, text="性别")self.gender_label.grid(row=3, column=0)# 性别用单选框实现gender_var=tk.StringVar()gender_var.set("男")male_radiobutton=tk.Radiobutton(self,text="男",value="男",variable=gender_var)male_radiobutton.grid(row=3,column=1)female_radiobutton=tk.Radiobutton(self,text="女",value="女",variable=gender_var)female_radiobutton.grid(row=3,column=2)# 地址用文本框实现self.address_label=bel(self,text="地址")self.address_label.grid(row=4,column=0)self.address_text=tk.Text(self,width=20,height=5)self.address_text.grid(row=4,column=1)# 添加按钮self.add_button = tk.Button(self, text="添加",command=self.add_person)self.add_button.grid(row=5, column=1)# 修改人员信息部分self.update_label = bel(self, text="修改人员信息")self.update_label.grid(row=6, column=0)self.id_label = bel(self, text="ID")self.id_label.grid(row=7, column=0)self.id_entry = tk.Entry(self)self.id_entry.grid(row=7, column=1)# 修改的内容用文本框实现self.update_label = bel(self, text="修改的内容") self.update_label.grid(row=8, column=0)# 姓名_update_label = bel(self, text="姓名") _update_label.grid(row=9, column=0)# 用Entry实现_update_entry = tk.Entry(self)_update_entry.grid(row=9, column=1)# 年龄self.age_update_label = bel(self, text="年龄") self.age_update_label.grid(row=10, column=0)# 用Entry实现self.age_update_entry = tk.Entry(self)self.age_update_entry.grid(row=10, column=1)# 性别gender_var=tk.StringVar()gender_var.set("男")male_radiobutton=tk.Radiobutton(self,text="男",value="男",variable=gender_var)male_radiobutton.grid(row=11,column=1)female_radiobutton=tk.Radiobutton(self,text="女",value="女",variable=gender_var)female_radiobutton.grid(row=11,column=2)# 地址self.address_update_label = bel(self, text="地址")self.address_update_label.grid(row=12, column=0)# 用Text实现self.address_update_text = tk.Text(self, width=20, height=5)self.address_update_text.grid(row=12, column=1)# 修改按钮self.update_button = tk.Button(self, text="修改", command=self.update_person)self.update_button.grid(row=13, column=1)# 删除人员信息部分self.delete_label = bel(self, text="删除人员信息") self.delete_label.grid(row=14, column=0)self.id_delete_label = bel(self, text="ID")self.id_delete_label.grid(row=15, column=0)self.id_delete_entry = tk.Entry(self)self.id_delete_entry.grid(row=15, column=1)# 删除按钮self.delete_button = tk.Button(self, text="删除", command=self.delete_person)self.delete_button.grid(row=16, column=1)# 查询人员信息部分self.query_label = bel(self, text="查询人员信息")self.query_label.grid(row=17,columnspan-2,pady-10)# 用Treeview实现表格显示查询结果columns=("ID","姓名","年龄","性别","地址")# 设置列宽和对齐方式等属性treeview=tk.ttk.Treeview(self,columns=columns,show="heading s")treeview.column("ID",width=50,anchor="center")treeview.column("姓名",width=100,anchor="center")treeview.column("年龄",width=50,anchor="center")treeview.column("性别",width=50,anchor="center")treeview.column("地址",width=150)# 设置表头for col in columns:treeview.heading(col,text=col)# 查询按钮self.query_button = tk.Button(self, text="查询",command=self.query_person)self.query_button.grid(row=18,columnspan-2,pady-10)# 添加treeview组件treeview.grid(row-19,columnspan-2,pady-10)def add_person(self):name = _entry.get()age = self.age_entry.get()gender = gender_var.get()address = self.address_text.get(1.0, tk.END).strip()if not name or not age or not gender or not address:messagebox.showwarning(title="提示", message="请填写完整信息!")returntry:age = int(age)except ValueError:messagebox.showwarning(title="提示", message="年龄必须是数字!")returnadd_person(name, age, gender, address)messagebox.showinfo(title="提示", message="添加成功!")def update_person(self):id_ = self.id_entry.get()if not id_:messagebox.showwarning(title-"提示",message-"请填写ID!")returntry:id_=int(id_)except ValueError:messagebox.showwarning(title-"提示",message-"ID必须是数字!")returnname=_update_entry.get()age=self.age_update_entry.get()gender=gender_var.get()address=self.address_update_text.get(1.0,tk.END).strip()if not name and not age and not gender and not address: messagebox.showwarning(title-"提示",message-"请填写修改的内容!")returntry:if age:age=int(age)except ValueError:messagebox.showwarning(title-"提示",message-"年龄必须是数字!")returnupdate_person(id_,name,age,gender,address)messagebox.showinfo(title="提示",message="修改成功!")def delete_person(self):id_ = self.id_delete_entry.get()if not id_:messagebox.showwarning(title="提示", message="请填写ID!")returntry:id_ = int(id_)except ValueError:messagebox.showwarning(title="提示", message="ID必须是数字!")returndelete_person(id_)messagebox.showinfo(title="提示", message="删除成功!")def query_person(self):# 先清空treeviewfor item in treeview.get_children():treeview.delete(item)# 获取所有人员信息result=query_all_person()# 将查询结果插入到treeview中for row in result:treeview.insert("",tk.END,values=row)if __name__ == '__main__':root = ()root.title("人员信息管理系统")app = Application(master=root)app.mainloop()总结本文介绍了一个基于Python的人员信息管理系统的源代码,该系统可以实现人员信息的添加、修改、删除和查询等功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#include <stdio.h>#include <stdlib.h>#include <string.h>#define N 100struct member_info{char xm[7];char xb[3];char sr[15];char whcd[13];char zc[17];char sfzh[19];char lxdh[12];int gl;int nl;};struct member_info member[N+1];int CurrentCount=0;void input(){char sfjx=1;while(sfjx!=0){if(CurrentCount==N){printf("\n人数已达上限,不能添加!!!\n");sfjx=0;}else{CurrentCount++;printf("\n请输入员工信息(姓名性别生日年龄文化程度联系电话身份证号码工龄职称):\n");scanf("%s%s%s%d%s%s%s%d%s",member[CurrentCount].xm,member[CurrentCount].xb,memb er[CurrentCount].sr,&member[CurrentCount].nl,member[CurrentCount].whcd,member[CurrentC ount].lxdh,member[CurrentCount].sfzh,&member[CurrentCount].gl,member[CurrentCount].zc);printf("\n是否继续(0--结束,其它--继续):");scanf("%d",&sfjx);}}printf("人员已排序");int i,j;for(i=1;i<CurrentCount;i++)for(j=CurrentCount;j>i;j--)if(strcmp(member[j].sfzh,member[j-1].sfzh)<0){member[0]=member[j];member[j]=member[j-1];member[j-1]=member[0];}printf("\n 人事基本信息表\n");printf(" 序号姓名性别生日年龄文化程度联系电话身份证号码工龄职称\n");for(i=1;i<=CurrentCount;i++)printf("%4d %6s%3s%11s%3d%8s%12s%20s%3d%5s\n",i,member[i].xm,member[i].xb,member[ i].sr,member[i].nl,member[i].whcd,member[i].lxdh,member[i].sfzh,member[i].gl,member[i].zc);system("pause");}void save(){FILE *fp;fp=fopen("ygjbxx.txt","w");if(fp==NULL)printf("\n文件打开不成功,信息无法保存!!!\n");else{fprintf(fp,"%d",CurrentCount);for(int i=1;i<=CurrentCount;i++)fprintf(fp,"\n%8s%4s%16s%4d%14s%13s%20s%4d%18s",member[i].xm,member[i].xb,member[ i].sr,member[i].nl,member[i].whcd,member[i].lxdh,member[i].sfzh,member[i].gl,member[i].zc);fclose(fp);printf("\n信息已成功保存!!!\n");}system("pause");}void read(){FILE *fp;fp=fopen("ygjbxx.txt","r");if(fp==NULL)printf("\n文件打开不成功,信息无法读取!!!\n");else{fscanf(fp,"%d",&CurrentCount);for(int i=1;i<=CurrentCount;i++){fscanf(fp,"%s%s%s%d%s%s%s%d%s",member[i].xm,member[i].xb,member[i].sr,&member[i].nl, member[i].whcd,member[i].lxdh,member[i].sfzh,&member[i].gl,member[i].zc);printf("姓名:%s性别:%s生日:%s年龄:%d 文化程度: %s 联系电话: %s 身份证号码: %s 工龄: %d 职称: %s\n",member[i].xm,member[i].xb,member[i].sr,member[i].nl,member[i].whcd,member[i].lxd h,member[i].sfzh,member[i].gl,member[i].zc);}fclose(fp);printf("\n信息已成功读取!!!\n");}system("pause");}void search(){char dcsfzh[19];int sfjx=1,i;while(sfjx!=0){printf("\n请输入一个待查员工的身份证号码:");scanf("%s",dcsfzh);strcpy(member[0].sfzh,dcsfzh);i=CurrentCount;while(strcmp(member[i].sfzh,dcsfzh)!=0)i--;if(i==0)printf("查无此人!!!\n");else{printf("\n此人详细信息如下:\n");printf("姓名:%s性别:%s生日:%s年龄:%d 文化程度: %s 联系电话: %s 身份证号码: %s 工龄: %d 职称: %s\n",member[i].xm,member[i].xb,member[i].sr,member[i].nl,member[i].whcd,member[i].lxd h,member[i].sfzh,member[i].gl,member[i].zc);}printf("\n是否继续(0--结束,其它--继续):");scanf("%d",&sfjx);}system("pause");}void del(){char dcsfzh[19];int sfjx=1,i,j;while(sfjx!=0){printf("\n请输入一个待删员工的身份证号码:");scanf("%s",dcsfzh);strcpy(member[0].sfzh,dcsfzh);i=CurrentCount;while(strcmp(member[i].sfzh,dcsfzh)!=0)i--;if(i==0)printf("查无此人!!!\n");else{printf("\n此人详细信息如下:\n");printf("姓名:%s性别:%s生日:%s年龄:%d 文化程度: %s 联系电话: %s 身份证号码: %s 工龄: %d 职称: %s\n",member[i].xm,member[i].xb,member[i].sr,member[i].nl,member[i].whcd,member[i].lxd h,member[i].sfzh,member[i].gl,member[i].zc);printf("\n按任意键开始删除......\n");system("pause");for(j=i+1;j<=CurrentCount;j++)member[j-1]=member[j];CurrentCount--;printf("\n已成功删除......\n");system("pause");}printf("\n是否继续(0--结束,其它--继续):");scanf("%d",&sfjx);}system("pause");}void modify(){char dcsfzh[19];int sfjx=1,i;while(sfjx!=0){printf("\n请输入一个待修改员工的身份证号码:");scanf("%s",dcsfzh);strcpy(member[0].sfzh,dcsfzh);i=CurrentCount;while(strcmp(member[i].sfzh,dcsfzh)!=0)i--;if(i==0)printf("查无此人!!!\n");else{printf("\n此人详细信息如下:\n");printf("姓名:%s性别:%s生日:%s年龄:%d 文化程度: %s 联系电话: %s 身份证号码: %s 工龄: %d 职称: %s\n",member[i].xm,member[i].xb,member[i].sr,member[i].nl,member[i].whcd,member[i].lxd h,member[i].sfzh,member[i].gl,member[i].zc);printf("\n请输入新内容......\n");printf("\n请输入人员相关信息(姓名性别生日年龄文化程度联系电话身份证号码工龄职称):");scanf("%s%s%s%d%s%s%s%d%s",member[CurrentCount].xm,member[CurrentCount].xb,memb er[CurrentCount].sr,&member[CurrentCount].nl,member[CurrentCount].whcd,member[CurrentC ount].lxdh,member[CurrentCount].sfzh,&member[CurrentCount].gl,member[CurrentCount].zc);printf("\n已成功修改......\n");system("pause");}printf("\n是否继续(0--结束,其它--继续):");scanf("%d",&sfjx);}system("pause");}int check(){int count=0,name,pass;while(count<=2){printf("\n请输入用户名及密码:");scanf("%d%d",&name,&pass);count++;if((name==1)&&(pass==1))count=10;elseif(count>2)count=5;}if(count==10)return 0;elsereturn 1;}struct mem_gz{float jbgz;float cql;float jj;float kk;float grsd;float sf;};struct mem_gz mem[N+1];void inputgz(){char sfjx=1;CurrentCount=0;while(sfjx!=0){if(CurrentCount==N){printf("\n工资已添加完毕,无法添加!!!\n");sfjx=0;}else{CurrentCount++;printf("请输入身份证号码为:%s的员工工资资料\n",member[CurrentCount].sfzh);printf("\n请输入员工工资信息(基本工资考勤奖金扣款个人所得税):\n");scanf("%f%f%f%f%f",&mem[CurrentCount].jbgz,&mem[CurrentCount].cql,&mem[CurrentCoun t].jj,&mem[CurrentCount].kk,&mem[CurrentCount].grsd);mem[CurrentCount].sf=mem[CurrentCount].jbgz*mem[CurrentCount].cql+mem[CurrentCount].jj -mem[CurrentCount].kk-mem[CurrentCount].grsd;}printf("\n是否继续(0--结束,其它--继续):\n");scanf("%d",&sfjx);}system("pause");}void savegz(){FILE *fq;fq=fopen("yggzxx.txt","w");if(fq==NULL)printf("\n文件打开不成功,信息无法保存!!!\n");else{fprintf(fq,"%d",CurrentCount);for(int i=1;i<=CurrentCount;i++)fprintf(fq,"\n%f %f %f %f %f %f",mem[i].jbgz,mem[i].cql,mem[i].jj,mem[i].kk,mem[i].grsd,mem [i].sf);fclose(fq);printf("\n信息已成功保存!!!\n");}system("pause");}void readgz(){FILE *fq;fq=fopen("yggzxx.txt","r");if(fq==NULL)printf("\n文件打开不成功,信息无法读取!!!\n");else{fscanf(fq,"%d",&CurrentCount);for(int i=1;i<=CurrentCount;i++){fscanf(fq,"%f%f%f%f%f%f",&mem[i].jbgz,&mem[i].cql,&mem[i].jj,&mem[i].kk,&mem[i].grsd, &mem[i].sf);printf("基本工资: %f 考勤: %f 奖金: %f 扣款: %f 个人所得税: %f 实发工资:%f\n",mem[i].jbgz,mem[i].cql,mem[i].jj,mem[i].kk,mem[i].grsd,mem[i].sf);}fclose(fq);printf("\n信息已成功读取!!!\n");}system("pause");}void searchgz(){int dcbh;int sfjx=1;while(sfjx!=0){printf("\n请输入一个待查员工编号(身份证号从小到大的顺序):");scanf("%d",&dcbh);if(dcbh<1||dcbh>CurrentCount)printf("查无此人!!!\n");else{printf("\n此人工资信息如下:\n");printf("基本工资: %f 考勤: %f 奖金: %f 扣款: %f 个人所得税: %f 实发工资:%f\n",mem[dcbh].jbgz,mem[dcbh].cql,mem[dcbh].jj,mem[dcbh].kk,mem[dcbh].grsd,mem[dcb h].sf);}printf("\n是否继续(0--结束,其它--继续):");scanf("%d",&sfjx);}system("pause");}void delgz(){int dcbh;int sfjx=1,j;while(sfjx!=0){printf("\n请输入一个待删工资的编号:");scanf("%d",&dcbh);if(dcbh<1||dcbh>CurrentCount)printf("查无此人!!!\n");else{printf("\n此人工资信息如下:\n");printf("基本工资: %f 考勤: %f 奖金: %f 扣款: %f 个人所得税: %f 实发工资:%f\n",mem[dcbh].jbgz,mem[dcbh].cql,mem[dcbh].jj,mem[dcbh].kk,mem[dcbh].grsd,mem[dcb h].sf);printf("\n按任意键开始删除......\n");system("pause");for(j=dcbh+1;j<=CurrentCount;j++)mem[j-1]=mem[j];CurrentCount--;printf("\n已成功删除......\n");system("pause");}printf("\n是否继续(0--结束,其它--继续):");scanf("%d",&sfjx);}system("pause");}void modifygz(){int dcbh;int sfjx=1;while(sfjx!=0)printf("\n请输入一个待修改工资员工的编号:");scanf("%d",&dcbh);if(dcbh<1||dcbh>CurrentCount)printf("查无此人!!!\n");else{printf("\n此人工资信息如下:\n");printf("基本工资: %f 考勤: %f 奖金: %f 扣款: %f 个人所得税: %f 实发工资:%f\n",mem[dcbh].jbgz,mem[dcbh].cql,mem[dcbh].jj,mem[dcbh].kk,mem[dcbh].grsd,mem[dcb h].sf);printf("\n请输入新内容......\n");printf("\n请输入人员工资信息(基本工资考勤奖金扣款个人所得税实发工资):");scanf("%f%f%f%f",&mem[CurrentCount].jbgz,&mem[dcbh].cql,&mem[dcbh].jj,&mem[dcbh].kk ,&mem[dcbh].grsd,&mem[dcbh].sf);printf("\n已成功修改......\n");system("pause");}printf("\n是否继续(0--结束,其它--继续):");scanf("%d",&sfjx);}system("pause");}void listgz(){int i;printf("\n 员工工资信息表\n");printf(" 序号基本工资考勤奖金扣款个人所得税实发工资\n");for(i=1;i<=CurrentCount;i++)printf("%4d %8f%8f%8f%8f",i,mem[i].jbgz,mem[i].cql,mem[i].jj,mem[i].kk,mem[i].grsd,mem[i]. sf);system("pause");}void main(){int xz=1;printf(" *~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*\n");printf(" * 欢迎使用人事工资管理系统*\n");printf(" ***************************************\n\n\n");if(check()!=0)printf("\n你无权使用本系统......\n\n");system("pause");}else{while(xz!=0){printf("\n请选择相应功能:\n");printf("1-录入\n2-查询\n3-修改\n4-删除\n5-保存\n6-读取\n7-输入员工工资\n8-保存工资信息\n9-读取工资信息\n10-修改工资信息\n11-删除工资信息\n12-工资列表\n0-结束\n请输入选择:");scanf("%d",&xz);switch(xz){case 1:input();break;case 2:search();break;case 3:modify();break;case 4:del();break;case 5:save();break;case 6:read();break;case 7:inputgz();break;case 8:savegz();break;case 9:readgz();break;case 10:modifygz();break;case 11:delgz();break;case 12:listgz();break;case 0:printf("\n\n谢谢使用本系统!\n\n");system("pause");break;default:printf("\n无此功能,请重新选择......\n");system("pause");}}}}。