员工信息表创建脚本
人员信息管理 数据库表设计
人员信息管理数据库表设计
人员信息管理数据库表设计需要根据具体需求进行设计。
一般来说,人员信息管理系统需要存储以下信息:
1.基本信息:姓名、性别、出生日期、身份证号、联系方式、家庭住址等。
2.工作信息:职位、部门、入职日期、离职日期等。
3.教育信息:学历、学校、专业、毕业日期等。
4.技能信息:技能名称、技能等级等。
5.奖惩信息:奖励名称、奖励日期、奖励等级等。
根据这些信息,可以设计以下数据库表:
人员表
●人员编号:唯一标识人员的编号。
●姓名:人员的姓名。
●性别:人员的性别。
●出生日期:人员的出生日期。
●身份证号:人员的身份证号。
●联系方式:人员的联系方式。
●家庭住址:人员的家庭住址。
工作表
●人员编号:人员的编号。
●职位:人员的职位。
●部门:人员所属的部门。
●入职日期:人员入职的日期。
●离职日期:人员离职的日期。
教育表
●人员编号:人员的编号。
●学历:人员的学历。
●学校:人员毕业的学校。
●专业:人员的专业。
●毕业日期:人员毕业的日期。
技能表
●人员编号:人员的编号。
●技能名称:技能的名称。
●技能等级:技能的等级。
奖惩表
●人员编号:人员的编号。
●奖励名称:奖励的名称。
●奖励日期:奖励的日期。
●奖励等级:奖励的等级。
领导突然叫我用函数公式制作按部门自动展现对应员工信息的表格
领导突然叫我⽤函数公式制作按部门⾃动展现对应员⼯信息的表格上周三,⼀位从事⾏政⼯作的朋友急着找我帮她制作⼀个表格,她说她领导今早突然叫她⽤函数公式设置选不同部门⾃动出现该部门所有员⼯信息的表格,⽽且还要⾃动添加线框。
但她只会筛选功能,琢磨了1⼩时还是不懂如何设置函数公式,中午领导就要⽂件了,只好请我帮忙。
以上是最终完成的表格动画演⽰我接收了她发过来的源数据⽂件以及根据她领导的要求,20分钟就帮她解决这个⾃动快速查询信息的Excel表格了。
我这位朋友不仅提前完成⼯作任务,还受到领导的赞扬!以下是制作步骤:第⼀、新增两个⼯作表分别把部门名称单独列出来和制作按部门查询的模板。
以上单独列出部门名称以上图制作按部门查询的模板部门下拉菜单操作:数据→数据验证以上图查询模板和部门名称菜单设置第⼆、(源数据)《员⼯花名册》⼯作表中添加辅助列。
公式:=COUNTIF($D$3:$D3,D3),设置公式后下拉。
第四、在《按部门查询》⼯作表中输⼊公式=IFERROR(INDEX(员⼯花名册!$B$3:$I$19,MATCH(按部门查询!$C$1&ROW(C1),员⼯花名册!$D$3:$D19&员⼯花名册!$A$3:$A19,0),COLUMN(C4)),'')输⼊公式后按Ctrl+Shift+回车键,然后向右拉动,和复制黏贴到前⾯两列,然后再全部下拉。
公式和拉动其它⾏列信息操作第五、设置展现的内容⾃动添加线框,条件格式→新建规则→设置公式=$A4<>''⾃动添加线框第六、隐藏辅助⼯作表和列:隐藏辅助内容最后说明:假如之后要在《员⼯花名册》上增加员⼯信息,可以在⼀开始设置部门对应的公式中的I19改为H100,D19改为D100,A19改为A100,根据公司实际员⼯数量和信息量灵活套⽤。
用Word生成员工信息表,单独生成独立文件,还能自动命名
用Word生成员工信息表,单独生成独立文件,还能自动命名准备工作
这里我以公司员工信息表来作为演示案例,最后我会将所有的员工单独生成每一个文件,还可以将该员工姓名命名。
1、首先,我们需要准备一些资料,一份Excel数据源表格,上面是所有员工信息资料。
2、员工信息表Word模板一份。
开始制作
1、首先,打开Word模板,进入「邮件」-「开始邮件合并」-「信函」。
再点开「选中收件人」-「使用现有列表」,选择“数据源”表格位置。
2、进入「视图」-「大纲视图」,选中标题“员工信息”,将其设为「1级」。
3、在对应位置「插入合并域」。
4、点击「完成并合并」-「编辑单个文件」-「全部」。
再次进入「大纲视图」,然后使用快捷键「Ctrl + A」全选,点击「显示文档」,进入「主控文档」-「创建」。
5、最后,我们只需将文档「另存为」即可全部保存。
相关技巧
/ WORD联盟文档忘记保存怎么恢复?断电导致文件丢失如何恢复?/ WORD联盟原来Word也可以设置下拉菜单选项,你知道吗?。
PYTHON 老男孩员工信息脚本
print "please select " print "\t\erlist" print "\t\t2.adduser" print "\t\t3.miduser" print "\t\t4.deluser" print "\t\t5.exit" ten=None try: ten=int(raw_input("entry your selected:")) except: print "please entry 1 or 2 or 3 or 4 or 5" if type(ten)==int: if ten == 1: print "userlist" elif ten == 2: print "adduser" elif ten == 3: print "miduser" elif ten == 4: print "deluser" elif ten == 5: break else: print "please entry 1 or 2 or 3 or 4 or 5" continue def userlist(name): while True:
163、 164、 165、 166、 167、 168、 169、 170、 171、 172、 173、 174、 175、 176、 177、 178、 179、 180、 181、 182、 183、 184、 185、 186、 187、 188、 189、 190、 191、 192、 193、 194、 195、 196、 197、 198、 199、 200、 201、 202、 203、 204、 205、 206、 i = 0
员工信息表模板
员工信息表模板一、引言在现代企业管理中,员工信息的管理是非常重要的一环。
为了更好地管理和维护员工信息,我们可以利用编程技术来创建一个员工信息表模板。
本文将介绍如何使用编程语言来设计和实现一个简单而实用的员工信息表模板。
二、功能需求员工信息表模板应该具备以下基本功能:1. 基本信息录入:包括员工编号、姓名、性别、出生日期、联系方式等;2. 部门信息录入:记录员工所属部门的信息,包括部门名称、部门编号等;3. 薪资信息录入:包括员工的基本工资、奖金、绩效考核得分等;4. 员工信息查询:可以根据员工编号或姓名进行查询,方便快捷地查找员工信息;5. 员工信息修改:可以对员工信息进行修改,包括基本信息、部门信息、薪资信息等;6. 员工信息删除:可以删除员工的信息,确保数据的精确性和完整性。
三、设计思路1. 数据结构:采用面向对象的编程思维,设计一个Employee类来表示员工信息,其中包含各种信息的属性和对应的getter和setter方法。
2. 用户界面:可以使用图形界面或者命令行界面来实现员工信息的录入、查询、修改和删除等功能。
3. 数据存储:可以将员工信息存储在数据库中,或者采用文件存储的方式,以便于数据的读写和管理。
四、编程实现下面以Python语言为例,演示如何实现一个简单的员工信息表模板。
```pythonclass Employee:def __init__(self, emp_id, name, gender, birthday, contact, department, salary):self.emp_id = emp_id = nameself.gender = genderself.birthday = birthdayself.contact = contactself.department = departmentself.salary = salarydef get_emp_id(self):return self.emp_iddef get_name(self):return # 其他属性的getter和setter方法省略...# 定义员工信息表列表employee_list = []# 添加员工信息函数def add_employee():emp_id = input("请输入员工编号:")name = input("请输入员工姓名:")gender = input("请输入员工性别:")birthday = input("请输入员工出生日期:")contact = input("请输入员工联系方式:")department = input("请输入员工所属部门:") salary = float(input("请输入员工基本工资:"))emp = Employee(emp_id, name, gender, birthday, contact, department, salary)employee_list.append(emp)print("员工信息添加成功!")# 查询员工信息函数def search_employee():emp_id = input("请输入要查询的员工编号:")for emp in employee_list:if emp.get_emp_id() == emp_id:print("员工编号:", emp.get_emp_id())print("员工姓名:", emp.get_name())# 其他属性的输出省略...returnprint("未找到该员工的信息!")# 修改员工信息函数def modify_employee():emp_id = input("请输入要修改的员工编号:")for emp in employee_list:if emp.get_emp_id() == emp_id: = input("请输入修改后的员工姓名:") # 其他属性的修改省略...print("员工信息修改成功!")returnprint("未找到该员工的信息!")# 删除员工信息函数def delete_employee():emp_id = input("请输入要删除的员工编号:")for emp in employee_list:if emp.get_emp_id() == emp_id:employee_list.remove(emp)print("员工信息删除成功!")returnprint("未找到该员工的信息!")# 员工信息表模板主程序def main():while True:print("====欢迎使用员工信息表模板====") print("1. 添加员工信息")print("2. 查询员工信息")print("3. 修改员工信息")print("4. 删除员工信息")print("0. 退出程序")choice = input("请选择操作:")if choice == '1':add_employee()elif choice == '2':search_employee()elif choice == '3':modify_employee()elif choice == '4':delete_employee()elif choice == '0':breakelse:print("无效的输入,请重新选择!")main()```五、总结通过上述代码的实现,我们可以成功创建一个简单的员工信息表模板,实现了基本的员工信息的录入、查询、修改和删除等功能。
c语言程序设计员工信息管理系统
c语言程序设计员工信息管理系统实验题目:员工信息管理系统一、实验目的1.熟悉c语言的编译连接和运行过程。
2.掌握c语言的数据类型, 熟悉整型、实型、字符型变量的定义方式及如何给它们赋值。
3.掌握if语句及switch语句的运用方法及嵌套应用方法。
4.掌握实现循环结构的三种语句while、do-while.、for 的使用。
5.掌握函数的定义方法和调用方法。
6.能够采用模块化思想调试程序。
二.实验内容1.编写程序并进行调试运行。
2.输入员工资料,并保存于文件。
每个员工包含信息如: 工作证号、姓名、性别、工龄、学历、职务、电话、工资等。
3.对已存入的员工信息进行更新操作,包括添加一个员工信息、删除某个员工信息和修改某个员工信息。
4.经过输入姓名、工作证号的方式查询员工信息。
5.最后输出员工信息, 供需要时打印。
二、需求分析1.该程序可用于对企业员工情况基本信息的存储、更新、查询、输出等操作,以实现对企业员工的管理。
2.其中更新功能包括: 添加信息、删除信息、修改信息、可根据需要添加一个或多个员工信息,也可对个别员工信息进行适当的删除或修改。
以便随时更新员工信息。
3.程序中设计的查询功能可根据需要从若干数据中查询某个员工信息, 而且可根据两种不同的方法查询: 按工作证号查询和按姓名查询。
以满足不同的需要。
四、概要设计1、方案设计对系统进行分析, 给出结构图分析: 系统要求实现许多的功能, 因此遵循结构化程序设计思想来进行本系统的设计—自顶向下、逐步细化, 将系统设计任务分解出许多子功能模块进行设计结构图如下:2.模块功能说明对各个模块进行功能的描述(1).输入模块:录入需要管理的员工信息并将信息保存于文件中,以方便日后进行打印、 读取、 更新等操作。
(2).添加模块:可添加一个或多个员工信息, 并将所添加员工信息保存, 方便查找。
(3).删除模块:可对辞职或休假的员工信息做删除处理。
(4).修改模块:可根据需要对多个员工信息进行修改, 也可随时对个别项进行修改。
公司员工信息表管理的制作指导
课题名称:公司员工信息表管理【课时安排】2学时【教学方法与教学手段】采用一体化教学,案例分析法【教学环境】装有office2003办公软件和广播教学软件的电脑(1台/人)【教学重点】1、掌握数据的有效性的设置、快速输入、函数的使用方法2、掌握数据的分类汇总、数据透视表方法【教学难点】1、数据的有效性的设置、快速输入、函数的使用方法【教学过程】一、复习旧课1、自动筛选和高级筛选的区别?2、高级筛选要建条件区域,条件区域怎么创建?(并举例说明)3、排序与分类汇总操作要注意的问题有哪些?二、新课导入在实际生活工作中,经常要快速处理一些大量的复杂和繁琐的数据信息,掌握在excel 表中如何快速处理数据就是一项十分重要的工作了。
三、新课讲授项目一:公司员工信息表管理1、项目点评本项目以人力资源信息表的管理为例介绍快速输入数据、分析数据和查询数据的方法和经验。
通过该项目,学习和掌握如何对数据有效性、前缀格式填充、mid、today、vlookup 函数、数据分类汇总及数据透视表的运用。
2、相关知识点简介(1)数据有效性设置,特别是对于不同表之间的数据的引用。
(2)单元格格式化的设置,对于自定义数据格式的设置是重点。
(3)if、mid、mod等函数的学习与应用。
(4)排序与分类汇总的设置与操作。
(5)高级筛选操作中条件区域的设置与操作。
3、项目说明要求:(1)启动Excel2003软件,打开素材文件。
(2)在“北京分公司员工信息表”工作表中完成:1)用填充柄方法在A5单元格开始的列中输入数据:“0001”、“0002”、“0003”……、“0012”。
2)运用前缀格式(前缀都是统一为:BJX)的方法在B列输入如效果图所示工作证号。
3)运用数据有效性,设置C列中“姓名”的数据有效性为“员工登记表”中的姓名,并通过下拉框选择如效果图所示的姓名,完成“姓名”一列数据的输入。
4)运用数据有效性,设置D列部门的有效性数据为序列“研发部,市场部,销售部”,并通过下拉框选择完成“部门”一列数据的输入。
用VBA开发员工信息表
生成员工工资条
具体的操作步骤如下: 步骤4:单击【确定】按钮,即可创建名为“实发工资”的公有子过程。在其中 输入如下完整的VBA程序代码,如图11-23所示。 步骤5:返回工作表中,为上述过程代码设置执行按钮,在【开发工具】选项卡 中单击“控件”选项组中的【插入】下拉按钮,在其下拉列表中单击【按钮(窗 体控件)】按钮 ,当鼠标指针变为“+”形状时,在工作表中的适当位置处按住 鼠标左键进行拖动,拖动至合适大小后释放鼠标左键,即可打开【指定宏】对话 框,在“宏名”列表框中选择“实发工资”选项,如图11-24所示。
生成员工工资条
具体的操作步骤如下: 步骤9:单击【确定】按钮,即可完成宏的指定操作。将按钮名称更改为“生成 工资条”,单击工作表中其他任意位置退出该按钮的编辑状态,单击该按钮,即 可运行指定的宏代码,生成工资条,当工资条的生成完成后会弹出如图11-27所 示的提示信息。 步骤10:无需单击【确定】按钮,系统会在3秒钟后自动关闭该提示信息,此时 可看到运行结果,如图11-28所示。
专家课堂(常见问题与解答)
• • 点拨1:宏放在WorkSheet和Sheet及模块中各有什么区域? 解答:放在ThisWorkbook或Sheet中的宏与模块中的宏的主要区别是book或 Sheet中的过程函数只能是对象所专有的,不能在对象之外的任何地方调用, 比如不能声明Public过程,否则编译报错,而模块中声明Public过程函数可以 在任何地方使用。 点拨2:在制作员工卡时单击【显示信息】按钮,为什么图像显示不出来,而 总是弹出运行时错误,路径找不到的提示信息? 解答:之所以出现这种情况,主要是由于被调用的图片输入路径不正确而引 起的,修改存放图片的路径即可。另外,在调用照片并显示在图像控件时, 图片的存放路径很重要,可根据实际情况输入图片的存放路径。
员工信息类的创建
员工信息类的创建
1. 员工基本信息的收集:包括姓名、性别、出生日期、身份证号码、联系方式等。
2. 员工职务信息的收集:包括职位、部门、入职时间、薪资等。
3. 员工教育背景的收集:包括学历、毕业院校、所学专业等。
4. 员工工作经历的收集:包括曾经的工作单位、工作岗位、工作内容等。
5. 员工家庭情况的收集:包括婚姻状况、子女情况等。
6. 员工任职资格及证书的收集:包括职业资格证书、职业技能证书等。
7. 员工获奖情况的收集:包括荣誉证书、奖金、表彰等。
8. 员工福利待遇的收集:包括社保、公积金、医疗保险、年假等。
9. 员工评优评先情况的收集:包括公司内部评优、评先、考核等。
10. 员工离职原因的收集:包括自愿离职、辞退、退休等。
- 1 -。
编写显示员工ID和员工姓名的程序
编写显示员工ID和员工姓名的程序。
使用两个类。
第一个类包括用来设置I D和姓名的员工数据和单独的方法。
另一个类创建员工对象,并使用对象调用方法,创建若干员工并显示他们的数据。
把程序保存为Emplo yee.java。
定义一个表示学生的类(Studen t)。
Studen t类包括表示学生的学号、姓名、性别、年龄和3门课程成绩的信息数据及用来获得和设置学号、姓名、性别、年龄和3门课程成绩的方法。
创建Test Stude nt 类,在TestS tuden t 类中生成5个学生对象,计算3门课程的平均成绩,以及某门课程的最高分和最低分。
程序如下:import java.util.*;//引入次包的目的是用该报里面的类a rrays(数组类)import java.text.Number Forma t;//引入此包的目的是对求得的平均成绩保留有效数字classstuden t{String name,number,sex;int age;double shuxue,yingyu,huaxue;studen t(String name,String number,String sex,int age) //构造方法,其中参数用于接收实参{=name;this.number=number;this.sex=sex;this.age=age;}void setinf o(double shuxue,double huaxue ,double yingyu) //普通方法,用于接收三门课的成绩{this.shuxue=shuxue;this.huaxue=huaxue;this.yingyu=yingyu;}void getinf o() //输出方法,输出创建的学生的基本信息{Number Forma t f=Number Forma t.getIns tance();//得到一个格式转换对象f.setMin imumF racti onDig its(2);//设定小数点后面保留两位有效数字System.out.printl n("姓名:"+name+" "+"学号:"+number+" "+"年龄:"+age+" "+"性别:"+sex);System.out.printl n("平均成绩是:"+f.format((shuxue+yingyu+huaxue)/3.0)); }}public classttttt{public static void main(String[] args){//下面是用来创建五个学生对象studen t t1=new studen t("zhangs an","123","女",20);t1.setinf o(88,91.2,96.5);t1.getinf o();studen t t2=new studen t("lisi","124","女",18);t2.setinf o(57,88.2,69);t2.getinf o();studen t t3=new studen t("wangwu","125","男",19);t3.setinf o(80,95.2,76.5);t3.getinf o();studen t t4=new studen t("qianqi","126","男",21);t4.setinf o(78,99.2,100);t4.getinf o();studen t t5=new studen t("zhaoji u","127","女",20);t5.setinf o(85,91.2,86);t5.getinf o();//下面是用来求最大值与最小值。
员工信息管理数据库建表信息
--创建数据库cre ate d ataba se NI ITgouse NIITgo--创建登陆日志表(Login Log)creat e tab le Lo ginLo g(L oginI d int prim ary k ey id entit y(1,1),--登陆日志IDUser Id in t,--登陆用户IDLogi nTime date timenot n ull,--登录时间IfSu ccess char(1) c heck(IfSuc cess=0 orIfSuc cess=1),--0代表失败,1代表成功Log inUse rIp v archa r(50) notnull,--登陆I PLog inDes c var char(200),--登陆描述)g o--创建用户状态表(Us erSta te)c reate tabl e Use rStat e(U serSt ateId intprima ry ke y ide ntity(1,1),--用户状态IDUserS tateN ame v archa r(50) notnull,--用户状态名)go--创建功能表(Sys Fun)creat e tab le Sy sFun(Nod eId i nt pr imary keyident ity(1,1),--功能IDDisp layNa me va rchar(50)not n ull,--功能名NodeU RL va rchar(100),--该功能对应的网页Dis playO rderint n ot nu ll,--如果该功能为子级功能,在对应父级功能中的序号Pa rentN odeId intnot n ull,--如果该功能为父级功能,为0,如果为子级功能,则为对应所属的父级功能I D)g o--创建部门信息表(De partI nfo)creat e tab le De partI nfo(Depa rtIdint p rimar y key iden tity(1,1),--部门I DDep artNa me va rchar(50)not n ull,--部门名称Prin cipal Uservarch ar(50),--部门主管C onnec tTelN o var char(50),--分机号Conne ctMob ileTe lNo v archa r(50),--手机Faxe s var char(50),--传真)go--创建角色信息表(RoleI nfo)creat e tab le Ro leInf o(R oleId intprima ry ke y ide ntity(1,1),--角色IDRo leNam e var char(50) n ot nu ll,--角色名称RoleD esc v archa r(200),--角色描述)go--创建角色所拥有的功能表(R oleRi ght)creat e tab le Ro leRig ht(RoleR ightI d int prim ary k ey id entit y(1,1),--角色拥有功能IDRo leIdint f oreig n key refe rence s Rol eInfo(Role Id),--角色IDNode Id in t for eignkey r efere ncesSysFu n(Nod eId),--功能I D)g o--创建用户信息表(Us erInf o)cr eatetable User Info(Idint i denti ty(1,1),--指针Us erIdint p rimar y key,--用户IDPa sswor d var char(50),--登陆密码Depa rtIdint f oreig n key refe rence s Dep artIn fo(De partI d),--所属部门I DGen der c har(2) che ck(Ge nder='男' o r Gen der='女'),--性别R oleId intforei gn ke y ref erenc es Ro leInf o(Rol eId),--用户所属角色IDUser State Id in t for eignkey r efere ncesUserS tate(UserS tateI d),--用户状态I D )g o--创建操作日志表(Op erate Log)creat e tab le Op erate Log(Oper ateId intprima ry ke y ide ntity(1,1),--操作日志IDUserI d int fore ign k ey re feren ces U serIn fo(Us erId),--当前操作用户I DOpe rateN ame v archa r(50) notnull,--进行的操作名O bject Id in t not null,--操作功能菜单I dOpe rateD esc v archa r(200),--操作描述O perat eTime date timenot n ull,--操作日期)go--插入功能信息inse rt in to Sy sFunselec t '人事管理',n ull,1,0 un ions elect '日程管理',nu ll,2,0 uni onse lect'文档管理',nul l,3,0 unio nsel ect '信息传递',null,4,0unionsele ct '系统管理',null,5,0 u nionselec t '机构信息','Defau lt1.a spx',1,1 u nionselec t '部门信息','Defau lt2.a spx',2,1 u nionselec t '人员管理','Defau lt3.a spx',3,1 u nionselec t '人员照片','Defau lt4.a spx',4,1 u nionselec t '角色管理','Defau lt5.a spx',5,1 u nionselec t '我的日程','Defau lt6.a spx',1,2 u nionselec t '部门日程','Defau lt7.a spx',2,2g o。
Office2016办公软件高级应用任务式教程 任务6 制作员工信息表
Office2016办公自动化高级应用案例教程
a=3,b=2
操作 演示
制作员工信息表
案例实现
6、输入员工工资
输入员工工资方法如下:
选择单元格区域H3:H12,打开“设置单元格格式”对话框,在“数字”选项卡的“分类”列表 框中选择“货币”选项,保持其他默认值不变,单击“确定”按钮,完成所选区域的单元格格式 设置。
3)单击“确定”按钮,返回工作表中,在单元格A3中输入“1”,按<Enter>键,即可在单元 格A3中看到完整的编号格式,再次选中单元格A3,利用填充句柄,以“填充序列”的方式将 编号自动填充到单元格A12。
4)在单元格区域B3:B12中输入员工姓名。
a=3,b=2
操作 演示
Office2016办公自动化高级应用案例教程
Office2016办公自动化高级应用案例教程
a=3,b=2
操作 演示
制作员工信息表
案例实现
2、自定义员工工号格式
自定义员工工号格式方法如下:
1)选择单元格区域A3:A12,单击“开始”选项卡“数字”功能组的对话框启动器按钮,打开 “设置单元格格式”对话框。
2)选择“数字”选项卡、“分类”列表框中的“自定义”选项,在右侧“类型”下方的文本 框中输入“2020000”。
制作员工信息表
案例实现
3、制作性别、部门、学历下拉列表
制作性别、部门、学历下拉列表方法如下:
1)选中单元格区域C3:C12,切换到“数据”选项卡,单击“数据工具”组中的“数据验证”下 拉按钮,从下拉列表中选择“数据验证”命令,打开“数据验证”对话框。
2)在“设置”选项卡中,单击“允许”下方的下拉按钮,从下拉列表中选择“序列”选项, 在“来源”下方的文本框中,输入文本“男,女”。
职工信息管理系统程序设计
引言通过大一下学期对C语言的学习,了解到了很多C语言的相关知识。
学习的过程有很多困惑但是当自己能够独立的看懂,能够独立的完成一个简单的程序时,心中就会收获无限的喜悦和成就感。
我可以看懂一些简单的程序,编写一些简单的程序,更多的是学会了一种思想——编程,它让我去思考很多日常生活中的事物是怎样通过一个个小小的函数实现其功能的,激发我探究的兴趣,更让我认真学习C语言的程序设计。
C语言是在国内外广泛使用的一种计算机语言。
C语言简洁紧凑、使用灵活方便、运算符丰富、适用范围大、可移植性好。
它既具有高级语言的特点,又具有汇编语言的特点。
它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。
在这次的课程设计中我将通过亲自设计程序,让自己熟悉C语言操作,更熟练的掌握C语句。
初步体会编程的过程,在不断的调试中获得最为完整的程序,为将来的程序深入学习打下基础和培养兴趣。
1 功能简介和设计要求1.1程序功能简介可以向文件中录入、删除、添加、查询职工信息,也可以从文件中导出来浏览1.2程序设计要求职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。
试设计职工信息管理系统,使之能提供以下功能:系统以菜单方式工作职工信息录入功能(职工信息用文件保存)--输入职工信息浏览功能--输出查询信息功能:(至少一种查询方式) --算法按职工号查询按学历查询按电话查询职工信息删除、添加功能2 程序总体设计框图:用键盘输入职工信息:将信息写入指定文本文件:将信息导出放在结构数组em 中:将所有信息显示在屏幕上 :输入职工号显示信息 :输入名字显示信息 :输入学历显示信息:删除原有的职工信息:添加新的职工信息3 主要函数介绍主函数:main()显示系统工作菜单,罗列该系统所有功能。
先声明所有将会调用到的函数名。
再运用选择函数switch 即可根据使用者所输入的功能代号进入对应的功能程序。
人力资源信息库建立操作技巧
人力资源信息库建立操作技巧接下来请您不要急着录入人员信息,我们要对一些信息项进行函数设置,以便系统能够自动生成相关信息,这会使我们的工作产生事半功倍的成效。
1、性别、出生月日、年龄的自动填充功能设置我们先对“性别”“出生年月”“年龄”进行函数设置。
当我们输入某人身份证号码时,系统便会自动生成“性别”,“出生年月”及“年龄”,如此就减少了我们录入的工作量。
请分别选择性别、出生月日、年龄信息项单元格输入下列公式:(1)性别: =IF(MOD(IF(LEN(E3)=15,MID(E3,15,1),MID(E3,17,1)),2)=1,"男","女")含义:“LEN(E3)=15”表示看E3中是否有15个字符;“MID(E3,15,1)”表示在E3中从第15位开始提取1位字符;“MOD(MID(),2)=1”表示提取的字符除以2余数为1;“IF(LEN(E3)=15,MID(E3,15,1),MID(E3,17,1)”表示看E3中是否够15个字符,假如够就从第15个字符开始取1个字符,假如不够15个字符就从第17个字符开始取1个字符。
我们的身份证号码一样是15位或18位。
“IF(MOD(IF(LEN(E3)=15,MID(E3,15,1),MID(E3,17,1)),2)=1,"男","女"”表示所取字符除以2假如余数为1显示男,否则显示女。
(2)出生年月: =DATE(MID(E3,7,4),MID(E3,11,2),MID(E3,13,2))含义:DATE(YEAR,MONTH,DAY);“MID(E3,7,4)”表示在E3中从第7个字符开始连续取4个字符表示年,用类似的表示方法一个人的出生年月日便能够通过函数设置表示出来,假如为了看起来方便,我们能够将单元格格式设置成年、月、日的日期格式,如此显示的结果会专门容易明白得。
职工信息表设计C++报告
职工信息表设计(1). 实习题目使用继承的方法,编写最多能输入10个职工的信息表,再根据这个表产生一个职工信息简表,并利用多态性实现信息的输出。
设计要求实现如下功能:1.建立职工信息数据,包括职工编号、姓名,性别和年龄。
2.根据职工信息表,建立只含姓名和年龄的职工信息简表。
3.使用继承的方法构造2个类,使用相应的对象数组放置10个职工信息。
4.编写同名display( )成员函数,用来输出数组的内容。
5.编写函数printer( ),用来根据实际对象输出它们的内容。
(2). 设计思想在这个职工信息数据表中要求做到先建立职工信息数据,在生成信息简表,并且将职工的原始数据信息和职工的信息简表都输出。
定义结构体class worker作为信息表基类用来存放职工的基本信息,class Dispwk 用来表示信息简表,class Dispwks用来表示原始信息表。
用到了以下的函数:void addin(Dispwks a[], int &n); //增加职工记录float brevity(Dispwks det[],Dispwk sim[],int &n); //生成信息简表float printer(worker *pt, int &n); //显示原始信息简表int nemu_select(); //菜单选择函数(3). 程序代码#include<iostream>#include <string>#define MAX 10using namespace std;class worker //信息表基类{public:string num;string name;char sex; //性别用F(女)和M(男)表示。
int age;virtual void display(){}};class Dispwk: public worker //简表类声明{public:virtual void display();};class Dispwks: public worker //信息表声明{public:virtual void display();};int nemu_select(); //菜单选择函数void addin(Dispwks a[], int &n); //增加职工记录float brevity(Dispwks det[],Dispwk sim[],int &n); //生成信息简表float printer(worker *pt, int &n); //显示原始信息简表/*主函数和菜单实现函数*/int main(){ cout<<"\t\t\t-------------------------------- "<<endl;cout<<"\t\t\t "<<endl;cout<<"\t\t\t "<<endl; cout<<"\t\t\t 欢迎使用"<<endl;cout<<"\t\t\t "<<endl; cout<<"\t\t\t 职工信息表系统"<<endl;cout<<"\t\t\t "<<endl;cout<<"\t\t\t--------------------------------"<<endl;Dispwk wk[MAX];//定义简表数组Dispwks wks[MAX];//定义信息表数组int lastnum=0,t=1;bool exit=false;do{switch(nemu_select()){case 1://1.增加职工记录addin(wks,lastnum);cout<<"增加职工信息成功!"<<endl;break;case 2://2.生成信息简表brevity(wks,wk,lastnum);cout<<"生成信息简表成功!"<<endl;break;case 3://3.显示原始记录printer(wks,lastnum);cout<<"返回主菜单!"<<endl;break;case 4://4.显示简表记录printer(wk,lastnum);cout<<"返回主菜单!"<<endl;break;case 5: //5.结束程序运行exit=true;// break;}}while(exit==false);cout<<"\t欢迎下次继续使用,再见!\n"<<endl; return 0;}int nemu_select() //菜单选择函数{int cn=5;do{cout<<"\t\t\t*************************\n";cout<<"\t\t\t1.增加职工信息\n";cout<<"\t\t\t \n";cout<<"\t\t\t2.生成信息简表\n";cout<<"\t\t\t \n";cout<<"\t\t\t3.显示原始记录\n";cout<<"\t\t\t \n";cout<<"\t\t\t4.显示简表记录\n";cout<<"\t\t\t \n";cout<<"\t\t\t5.结束程序运行\n";cout<<"\t\t\t \n";cout<<"\t\t\t*************************\n";cout<<"\t选择1-5:";cin>>cn;}while(cn<1||cn>5);return cn;}void Dispwk::display (){//输出屏幕数据cout<<"姓名:"<<name<<endl;cout<<"年龄:"<<age<<endl;}void Dispwks::display (){//输出屏幕数据cout<<"编号:"<<num<<endl;cout<<"姓名:"<<name<<endl;cout<<"性别:"<<sex<<endl;cout<<"年龄:"<<age<<endl;}//1.增加职工记录void addin(Dispwks a[], int &n){cout<<"您选择的是:1.增加职工记录"<<endl;cout<<"注意:当编号为零时,进入主界面:"<<endl; for(n=0;n<10;n++){//判断编号是否重复cout<<"输入编号:";cin>>a[n].num;if(a[n].num=="0")break; //结束输入for(int k=0;k<n;k++){if(a[n].num==a[k].num)cout<<"输入编号重复!"<<endl;}//判断姓名是否重复cout<<"输入姓名:";cin>>a[n].name;for(k=0;k<n;k++){if(a[n].name==a[k].name)cout<<"输入姓名重复!"<<endl;}cout<<"请输入性别(f为女,m为男):";cin>>a[n].sex;if(a[n].sex!='f'&&a[n].sex!='m'){cout<<"性别输入错误";cout<<"请输入性别(f为女,m为男):";cin>>a[n].sex;}cout<<"请输入年龄:";cin>>a[n].age;}}//2.生成信息简表float brevity(Dispwks det[],Dispwk sim[],int &n){if(n<10){for (int i=0;i<=n;i++){sim[i].name=det[i].name;sim[i].age =det[i].age;}return 1;}else return 0;}//信息输出函数float printer(worker *pt, int &n){for(int i=0;i<n;i++){cout<<"********************"<<endl;(pt+i)->display();}cout<<"********************"<<endl;return 0;}(4). 测试用例及测试结果(5). 程序不足及升级方向在整个职工信息表系统中要求必须先增加职工信息,否则执行以下几步什么都不输出。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
);
drop table emp_holiday_info ;
create table emp_holiday_info(
hol_ygnjbh varchar(10) primary key not null ,
wor_tjry varchar(20) ,
wor_tjrq date ,
wor_xgry varchar(20) ,
wor_xgrq date ,
wor_bbxx INTEGER
);
drop table ent_department_info ;
create table emp_education_info(
edu_xlxxbh varchar(10) primary key not null ,
edu_ygbh varchar(10) not null ,
edu_xllb varchar(2) ,
edu_byxx varchar(100) ,
dpt_tjrq date ,
dpt_xgry varchar(20) ,
dpt_xgrq date ,
dpt_bbxx INTEGER
);
drop table emp_user_info ;
create table emp_user_info(
edu_sxzy varchar(100) ,
edu_ksrq date ,
edu_jsrq date ,
edu_tjry varchar(20) ,
edu_tjrq date ,
edu_xgry varchar(20) ,
hol_xgry varchar(20) ,
hol_xgrq date ,
hol_bbxx INTEGER ,
constraint foreign key(hol_ygbh) references emp_base_info(emp_bzbh)
create table emp_address_info(
add_dzxxbh varchar(10) primary key not null ,
add_ygbh varchar(10) not null ,
add_dzlb varchar(2) ,
edu_xgrq date ,
edu_bbxx INTEGER ,
constraint foreign key (edu_ygbh) references emp_base_info(emp_bzbh)
);
drop table emp_address_info;
emp_xb varchar(2) ,
emp_yglx varchar(2) ,
emp_zt varchar(2) ,
emp_jg varchar(100) ,
emp_szgw varchar(20) ,
emp_szbm varchar(20),
acc_yhzh varchar(20) ,
acc_tjry varchar(20) ,
acc_tjrq date ,
acc_xgry varchar(20) ,
acc_xgrq date ,
acc_bbxx ER ,
hol_ygbh varchar(10) not null ,
hol_ndednj INTEGER ,
hol_synj INTEGER ,
hol_yynj INTEGER ,
hol_tjry varchar(20) ,
hol_tjrq date ,
emp_tjry varchar(10),
emp_xgsj date,
emp_xgry varchar(10),
emp_bbxx INTEGER
);
drop table emp_connect_info ;
create table emp_connect_info(
add_xgrq date ,
add_bbxx INTEGER ,
constraint foreign key (add_ygbh) references emp_base_info(emp_bzbh)
);
drop table emp_accout_info ;
user_xgrq date ,
user_bbxx INTEGER ,
constraint foreign key (user_ygbh) references emp_base_info(emp_bzbh)
);
user_zhlb varchar(10) ,
user_dldz varchar(20) ,
user_dlsj datetime ,
user_tjry varchar(20) ,
user_tjrq date ,
user_xgry varchar(20) ,
);
drop table ent_work_info ;
create table ent_work_info(
wor_gwbh varchar(10) primary key not null ,
wor_gwmc varchar(100) not null ,
wor_zt varchar(2) ,
create table emp_accout_info(
acc_yhzhbh varchar(10) primary key not null ,
acc_ygbh varchar(10) not null ,
acc_khyh varchar(50) ,
conn_tjsj date ,
conn_tjry varchar(20) ,
conn_xgsj date ,
conn_xgry varchar(20),
conn_bbxx INTEGER ,
CONSTRAINT FOREIGN KEY (conn_bzbh) REFERENCES emp_base_info (emp_bzbh)
user_zhbh varchar(10) primary key not null ,
user_zh varchar(100) not null ,
user_mm varchar(20) not null ,
user_ygbh varchar(10) not null ,
add_gj varchar(20) ,
add_sf varchar(20) ,
add_cs varchar(20) ,
add_qy varchar(20) ,
add_jd varchar(20) ,
drop table emp_base_info ;
create table emp_base_info (
emp_bzbh varchar(10) primary key not null ,
emp_bh varchar(10) not null ,
emp_xm varchar(20) not null,
);
drop table emp_marry_info;
create table emp_marry_info(
mar_hyzkbh varchar(10) primary key not null ,
mar_ygbh varchar(10) not null ,
mar_hyzk varchar(2) ,
conn_jxfsbh varchar(10) primary key not null ,
conn_bzbh varchar(10) not null ,
conn_lb varchar(2) ,
conn_lxnr varchar(100) ,x
create table ent_department_info(
dpt_bmbh varchar(10) primary key not null ,
dpt_bmmc varchar(10) not null ,
dpt_zt varchar(2) ,
dpt__tjry varchar(20) ,
emp_gzdd varchar(20),
emp_zjsj varchar(10),
emp_sfzh varchar(18),
emp_lzrq date ,
emp_lzsm varchar(200),
emp_aqjb varchar(10),
emp_tjsj date ,
mar_poxm varchar(20) ,
mar_pogzdw varchar(100) ,
mar_posfz varchar(18) ,
mar_tjry varchar(10) ,
mar_tjrq date ,
mar_xgry varchar(10) ,
add_dznr varchar(100) ,
add_yzbm varchar(10) ,
add_tjry varchar (20) ,
add_tjrq date ,
add_xgry varchar(20) ,
mar_xgsj date ,
mar_bbxx INTEGER ,
constraint foreign key (mar_ygbh) references emp_base_info(emp_bzbh)