职工信息管理系统(HR怎样做员工信息管理更高效)

2023-10-14 16:35:15 23

职工信息管理系统(HR怎样做员工信息管理更高效)

大家好,职工信息管理系统相信很多的网友都不是很明白,包括HR怎样做员工信息管理更高效也是一样,不过没有关系,接下来就来为大家分享关于职工信息管理系统和HR怎样做员工信息管理更高效的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!

本文目录

HR怎样做员工信息管理更高效

员工信息管理是每个公司人力资源部门必做的一项工作,但很多HR觉得这项工作很简单:员工的一些基本信息填下,之后统一保存就OK了。

其实不然!

员工信息除了包含基础的信息,还要包括员工在公司的发展轨迹,如员工岗位变动情况、员工奖罚情况、荣誉情况、学历晋升、职称变动等情况,这些信息数据如何处理,如何能快速的提取需要的数据是比较困难的。

高段位的HR会十分重视员工信息管理,在新员工入职时就做好系统化的信息管理,这样每位员工在公司的成长轨迹都能清晰可见,同时避免很多不必要的麻烦~

薪人薪事人力资源系统的员工管理模块,可快捷添加、批量更新、随时归档员工信息,把HR从重复劳动中解放;灵活性地自定义员工信息,还能满足更多企业需求。为企业的高效管理打下坚实的基础。

添加入职员工

员工是整个系统使用核心和基础的一步,系统中有了员工,就可以做其他模块的操作,查看统计数据等。所以,使用系统的第一步就是添加员工信息。

▼ 在添加入职员工,或者初期测试时,可以选择单个添加员工的形式。

▼ 系统不仅可以录入中国大陆的手机号,还支持港澳台及国外的手机号录入,所以在添加员工时需要选择左侧对应的区号。

▼ 在添加员工信息中,带*为必填项,非必填项都可以先不用填,之后可以再进行完善。

▼ 添加完待入职员工后,可以在操作列点击“...”,进行入职、提醒、删除相关操作,注意删除操作是不可逆的哦~

操作入职后会自动进入在职表,提醒操作会向员工发送一封完善信息的邮件。

按照以上操作单个录入员工信息不难,但你可能会问:如果公司已经有上百人了,难道也要一个一个录入?当然不~在薪人薪事人力资源系统中,HR可以【批量添加员工信息】!

批量添加员工

批量添加员工信息:点击左侧导航栏【员工】➤进入员工模块➤选择【导入】,会出现各个批量添加的选项➤选择【批量添加员工】。

▼ 系统支持自有Excel上传或者下载系统模板完善信息后上传。下载系统内模板,把必填信息复制粘贴到模板中后,批量导入,节约时间精力。

(如果是自有表格,字段一般和系统内不一致,可以手动进行匹配。)

▼ 批量上传完之后,HR可批量直接在此页面开启【员工权限】、【给员工发送绑定通知短信】

绿色代表开启,灰色代表关闭。信息确认无误后,点击【确认添加】即可成功添加员工信息。

上述功能既能保证员工关键信息录入不遗漏,又可节省HR的时间管理成本,BUT这可不是全部哦~

薪人薪事人力资源系统的旗舰版本中还有【添加待入职员工】的功能,对于一些即将入职,但还不是公司员工的人员信息,HR也可以通过此功能进行管理~

添加待入职员工

▼ 点击添加待入职员工:同添加员工相同,HR需填写姓名、手机、入职时间、聘用形式等必填项。

▼ 其中HR还需要填写其个人邮箱,并启发送完善信息邮件的开关,以便待入职员工可以自主完善个人信息。

【发送完善信息邮件】开启后,可向待入职员工的个人邮箱发送一封邮件,通过邮件通知待入职人员提前完善个人信息。

在员工模块的【待入职人员库】,可用于存储、管理待入职人员,此外,在招聘模块的应聘者接受 offer 后也会同步到待入职员工中,HR管理更加方便快捷。

员工信息表的完善程度,决定着整个人力资源部数据分析的完整程度和效率,如人员异动分析;招聘、培训、薪酬、绩效等多维分析等。

而HR对员工信息的录入、整理、归纳程度,直接影响了以后的工作。HR千万不能忽略哦~选择专业化、系统化的薪人薪事人力资源系统,更能让工作效率翻倍!至于功能到底有多好,试试就知道啦:https://www.xinrenxinshi.com/

e员工人事云,企业员工管理系统怎么样有人用过吗

企业员工管理系统好用的有很多,涉及有员工信息管理、组织架构、考勤统计、薪资核算、绩效考核、招聘培训等等。好用的人力资源软件是可以根据企业的实际需求来定制,这样可以灵活选择自己所需的功能,不用花钱浪费在不必要的功能上。既然楼主问到e员工人事云,那么e员工人事云算不算的上是好用的企业员工管理系统呢?回答是肯定的,e员工人事云具备上述所有功能。既可以支持选择企业需要的功能,既可以支持个性化定制。

为什么越来越多的企业要使用人事系统

因为随着企业的管理越来越规范,人员规模越来越大,人事类的工作变得复杂繁琐。这就需要人事系统辅助管理。通过人事系统进行自动化,HR部门的工作将变得更加精简。具体表现在减少HR重复性的任务以及一些基本管理任务,光这些就为HR部门节省了不少的时间。那么省下时间来,HR又该做什么工作呢?HR可以专注于员工技能以及专业知识等更重要的工作。通过人事系统,HR还可以得到更多的数据,这些数据可以帮助HR的决策作出数据支持。人事系统带来的自动化可以为企业创造更多的价值。

用C++编写职工信息管理系统

#include《stdio.h》 #include《conio.h》 #include《malloc.h》 #include《string.h》 typedef struct ZHIGONG{ char zhigongNumber;/*职工号*/ char zhigongName;/*职工姓名*/ char zhigongsex; /*职工性别*/ char zhigongage; /*出生年月*/ char zhigongedu;/*学历*/ char zhigongposition; /*职务*/ char zhigongwage; /*工资*/ struct ZHIGONG *next; }ZHIGONG; ZHIGONG *headLink;/*链表表头指针*/ /*以下是函数声明*/ void ReadInfoFormFile(void); void DesplayMenu(void);void CreateHeadLink(void);ZHIGONG *MallocNode(void);void GetInformation(ZHIGONG *t);void InsertOneNode(ZHIGONG *t);void DesplayInfoByzhigongwage(void);void DesplayInfoByezhigongedu(void); void DesplayOneNode(ZHIGONG *t);void DeleteNodeByzhigongNumber(void);void OutputInformation(void);void ChangeMarkByzhigongName(void);void CompositorByTotalzhigongwage(void); void CompositorByTotalzhigongedu(void);void SaveLinkToFile(void); int choose;/*用于接受用户的选择*/ /*主函数*/ void main() { CreateHeadLink(); ReadInfoFormFile(); DesplayMenu(); SaveLinkToFile();} /************************************ 函数功能:从文件中读职工信息到链表中 ************************************/ void ReadInfoFormFile(void) { FILE *fp; ZHIGONG *p; fp=fopen("zhigong.txt","r"); if(!fp) { printf("文件不存在\n"); return; } p=MallocNode(); while(fscanf(fp,"%s%s%s%s%s%s%s",p-》zhigongNumber,p-》zhigongName,p-》zhigongsex, p-》zhigongage,p-》zhigongedu,p-》zhigongposition,p-》zhigongwage)) { InsertOneNode(p); p=MallocNode(); } fclose(fp); } /************************************ 函数功能:显示菜单,根据用户的输入 完成相应的功能 ************************************/ void DesplayMenu(void) { ZHIGONG *p; printf("-------请选择相应功能------------\n\n"); printf("| 1 录入职工信息 |\n"); printf("| 2 显示所有职工的信息 |\n"); printf("| 3按工资查询 |\n"); printf("| 4 按学历查询 |\n"); printf("| 5按工资排序 |\n"); printf("| 6 按学历排序 |\n"); printf("| 7 按职工号删除职工信息 |\n"); printf("| 8 按职工号修改职工信息 |\n"); printf("| 9 退出 |\n\n"); scanf("%d",&choose);/*取得用户的选择*/ switch(choose) { case 1: p=MallocNode();/*先申请一个新结点*/ GetInformation(p);/*要求用户输入信息到新结点中*/ InsertOneNode(p);/*将新结点加到链表中*/ break; case 2: OutputInformation();/*显示所有职工的信息*/ break; case 3: DesplayInfoByzhigongwage();/*根据用户输入的职工工资显示该职工的信息*/ break; case 4: DesplayInfoByezhigongedu(); /*根据用户输入的职工学历显示该职工的信息*/ break; case 5: CompositorByTotalzhigongwage();/* 按工资排序*/ break; case 6: CompositorByTotalzhigongedu();/* 按学历排序*/ break; case 7: DeleteNodeByzhigongNumber();/*根据用户输入的职工号删除该职工信息*/ break; case 8: ChangeMarkByzhigongName();/*根据用户输入的职工姓名修改该职工信息*/ break; case 9: SaveLinkToFile();/*保存数据后再退出*/ free(headLink); default: break; } DesplayMenu();/*递归调用*/ } /************************************ 函数功能:建立链表表头 ************************************/ void CreateHeadLink(void) { ZHIGONG *p; p=(ZHIGONG*)malloc(sizeof(ZHIGONG)); headLink=p; p-》next=NULL; } /**************************************** 函数功能:申请一个新结点,并将其初始化 *****************************************/ ZHIGONG *MallocNode(void) { ZHIGONG *p; int i; p=(ZHIGONG*)malloc(sizeof(ZHIGONG)); if(p==NULL) return NULL; for(i=0;i《10;i++) p-》zhigongNumber=’\0’; for(i=0;i《20;i++) p-》zhigongName=’\0’; for(i=0;i《4;i++) p-》zhigongsex=’\0’; for(i=0;i《10;i++) p-》zhigongage=’\0’; for(i=0;i《10;i++) p-》zhigongedu=’\0’; for(i=0;i《30;i++) p-》zhigongposition=’\0’; for(i=0;i《1000;i++) p-》zhigongwage=’\0’; p-》next=NULL; return p; } /************************************ 函数功能:取得用户输入的职工信息 ************************************/ void GetInformation(ZHIGONG *t) { printf("请输入职工号:\n"); scanf("%s",t-》zhigongNumber); printf("请输入职工姓名:\n"); scanf("%s",t-》zhigongName); printf("请输入职工性别:\n"); scanf("%s",t-》zhigongsex); printf("请输入职工出生年月:\n"); scanf("%s",t-》zhigongage); printf("请输入职工学历:\n"); scanf("%s",t-》zhigongedu); printf("请输入职工职位:\n"); scanf("%s",t-》zhigongposition); printf("请输入职工工资:\n"); scanf("%s",t-》zhigongwage); } /************************************ 函数功能:在链表的结尾处增加一个结点 ************************************/ void InsertOneNode(ZHIGONG *t) { ZHIGONG *p; p=headLink; while(p-》next) { p=p-》next; } p-》next=t; } /************************************************* 函数功能:根据用户输入的职工工资显示该职工的信息 **************************************************/ void DesplayInfoByzhigongwage(void) { ZHIGONG *p; char zhigongwage; char flag=0; p=headLink-》next; printf("请输入职工的工资:\n"); scanf("%s",zhigongwage); while(p) { if(strcmp(p-》zhigongwage,zhigongwage)==0) { printf("职工号\t姓名\t性别\t出生年月\t学历\t职务\t工资\n\n"); DesplayOneNode(p); flag=1; break; } p=p-》next; } if(!flag) printf("对不起,不存在工资为%s的职工\n",zhigongwage); } /************************************************ 函数功能:根据用户输入的职工学历显示该职工的信息 *************************************************/ void DesplayInfoByezhigongedu(void) { ZHIGONG *p; char zhigongedu; char flag=0; p=headLink-》next; printf("请输入职工学历:\n"); scanf("%s",zhigongedu); while(p) { if(strcmp(p-》zhigongedu,zhigongedu)==0) { printf("职工号\t姓名\t性别\t出生年月\t学历\t职务\t工资\n\n"); DesplayOneNode(p); flag=1; break; } p=p-》next; } if(!flag) printf("对不起,不存在学历为 %s 的职工\n",zhigongedu); } /************************************ 函数功能:输出一个结点的信息 ************************************/ void DesplayOneNode(ZHIGONG *t) { printf("%s\t",t-》zhigongNumber); printf("%s\t",t-》zhigongName); printf("%s\t",t-》zhigongsex); printf("%s\t",t-》zhigongage); printf("%s\t",t-》zhigongedu); printf("%s\t",t-》zhigongposition); printf("%s\t\n",t-》zhigongwage); } /************************************************* 函数功能:根据用户输入的职工号删除该职工的信息**************************************************/ void DeleteNodeByzhigongNumber(void) { char zhigongNumber; ZHIGONG *p,*q; char flag=0; printf("请输入要删除的职工的职工号:"); scanf("%s",zhigongNumber); p=headLink; q=headLink-》next; while(q) { if(strcmp(q-》zhigongNumber,zhigongNumber)==0) { p-》next=q-》next; free(q); flag=1; break; } p=p-》next; q=q-》next; } if(!flag) { printf("不存在该职工号的职工\n"); return; } printf("成功删除\n"); } /************************************ 函数功能:显示所有职工的信息 ************************************/ void OutputInformation(void) { ZHIGONG *p; p=headLink-》next; if(p==NULL) { printf("现在没有职工信息,请先输入职工信息\n\n"); return; } printf("职工号\t姓名\t性别\t出生年月\t学历\t职务\t工资\n\n"); while(p) { DesplayOneNode(p); p=p-》next; } } /********************************************* 函数功能:根据输入的职工姓名修改员工的信息**********************************************/ void ChangeMarkByzhigongName(void) { ZHIGONG *p; char zhigongName; char flag=0; char zhigongedu,zhigongwage,zhigongage,zhigongNumber,zhigongsex,zhigongposition; p=headLink-》next; printf("请输入职工姓名:\n"); scanf("%s",zhigongName); while(p) { if(strcmp(p-》zhigongName,zhigongName)==0) { printf("请输入新的职工号:\n"); scanf("%s",&zhigongNumber); printf("请输入新的学历:\n"); scanf("%s",&zhigongedu); printf("请输入新的工资:\n"); scanf("%s",&zhigongwage); printf("请输入新的出生年月:\n"); scanf("%s",&zhigongage); printf("请输入新的性别:\n"); scanf("%s",&zhigongsex); printf("请输入新的职位:\n"); scanf("%s",&zhigongposition); strcpy(p-》zhigongposition,&zhigongposition); strcpy(p-》zhigongsex,&zhigongsex); strcpy(p-》zhigongNumber,&zhigongNumber); strcpy(p-》zhigongedu,&zhigongedu); strcpy(p-》zhigongwage,&zhigongwage); strcpy(p-》zhigongage,&zhigongage); flag=1; printf("修改成功\n"); break; } p=p-》next; } if(!flag) printf("对不起,不存在姓名为 %s 的职工\n",zhigongName); } /************************************ 函数功能:保存链表数据到文件中 ************************************/ void SaveLinkToFile(void) { ZHIGONG *p; FILE *fp; p=headLink-》next; if(p==NULL) { printf("现在没有职工信息,请先输入职工信息\n\n"); return; } fp=fopen("zhigong.txt","w+"); if(!fp) { printf("文件不存在\n"); return; } while(p) { fprintf(fp,"%s%s%s%s%s%s%s",p-》zhigongNumber,p-》zhigongName,p-》zhigongsex, p-》zhigongage,p-》zhigongedu,p-》zhigongposition,p-》zhigongwage); p=p-》next; } fclose(fp); } /************************************ 函数功能:按职工工资排序 ************************************/ void CompositorByTotalzhigongwage(void) { ZHIGONG exchange,*r,*p,*q; r=headLink-》next; if(r==NULL) { printf("现在还没职工信息,请先输入职工信息\n"); return; } while(r)/*两层while循环实现排序*/ { p=r; q=r-》next; while(q) { if((p-》zhigongwage)》(p-》zhigongwage)) { strcpy(exchange.zhigongNumber,q-》zhigongNumber);/*先复制q结点信息到exchange*/ strcpy(exchange.zhigongName,q-》zhigongName); strcpy(exchange.zhigongsex,q-》zhigongsex); strcpy(exchange.zhigongage,q-》zhigongage); strcpy(exchange.zhigongedu,q-》zhigongedu); strcpy(exchange.zhigongposition,q-》zhigongposition); strcpy(exchange.zhigongwage,q-》zhigongwage); strcpy(q-》zhigongNumber,p-》zhigongNumber);/*再复制p结点信息到q*/ strcpy(q-》zhigongName,p-》zhigongName); strcpy(q-》zhigongsex,p-》zhigongsex); strcpy(q-》zhigongage,p-》zhigongage); strcpy(q-》zhigongedu,p-》zhigongedu); strcpy(q-》zhigongposition,p-》zhigongposition); strcpy(q-》zhigongwage,p-》zhigongwage); strcpy(p-》zhigongNumber,exchange.zhigongNumber);/*最后复制exchange结点信息到p*/ strcpy(p-》zhigongName,exchange.zhigongName); strcpy(p-》zhigongsex,exchange.zhigongsex); strcpy(p-》zhigongage,exchange.zhigongage); strcpy(p-》zhigongedu,exchange.zhigongedu); strcpy(p-》zhigongposition,exchange.zhigongposition); strcpy(p-》zhigongwage,exchange.zhigongwage); } q=q-》next; } r=r-》next; } OutputInformation(); }/************************************ 函数功能:按职工学历排序 ************************************/ void CompositorByTotalzhigongedu(void) { ZHIGONG exchange,*r,*p,*q; r=headLink-》next; if(r==NULL) { printf("现在还没职工信息,请先输入职工信息\n"); return; } while(r)/*两层while循环实现排序*/ { p=r; q=r-》next; while(q) { if((q-》zhigongedu)》(p-》zhigongedu)) { strcpy(exchange.zhigongNumber,q-》zhigongNumber);/*先复制q结点信息到exchange*/ strcpy(exchange.zhigongName,q-》zhigongName); strcpy(exchange.zhigongsex,q-》zhigongsex); strcpy(exchange.zhigongage,q-》zhigongage); strcpy(exchange.zhigongedu,q-》zhigongedu); strcpy(exchange.zhigongposition,q-》zhigongposition); strcpy(exchange.zhigongwage,q-》zhigongwage); strcpy(q-》zhigongNumber,p-》zhigongNumber);/*再复制p结点信息到q*/ strcpy(q-》zhigongName,p-》zhigongName); strcpy(q-》zhigongsex,p-》zhigongsex); strcpy(q-》zhigongage,p-》zhigongage); strcpy(q-》zhigongedu,p-》zhigongedu); strcpy(q-》zhigongposition,p-》zhigongposition); strcpy(q-》zhigongwage,p-》zhigongwage); strcpy(p-》zhigongNumber,exchange.zhigongNumber);/*最后复制exchange结点信息到p*/ strcpy(p-》zhigongName,exchange.zhigongName); strcpy(p-》zhigongsex,exchange.zhigongsex); strcpy(p-》zhigongage,exchange.zhigongage); strcpy(p-》zhigongedu,exchange.zhigongedu); strcpy(p-》zhigongposition,exchange.zhigongposition); strcpy(p-》zhigongwage,exchange.zhigongwage); } q=q-》next; } r=r-》next; } OutputInformation(); }

C语言 职工信息管理系统

/*这是我开始做课程设计时写的*/#include "stdio.h" /*标准输入输出函数库*/#include "stdlib.h" /*标准函数库*/#include "string.h" /*字符串函数库*/#include "conio.h" /*屏幕操作函数库*/#define HEADER1 " -------------------------------ZGGZ---------------------------------------- \n"#define HEADER2 "| number| name | jbgz | jj | kk | yfgz | sk | sfgz | \n"#define HEADER3 "|--------|-----------|--------|--------|--------|--------|--------|--------| \n"#define FORMAT "|%-8s|%-10s |%8.2f|%8.2f|%8.2f|%8.2f|%8.2f|%8.2f| \n"#define DATA p-》num,p-》name,p-》jbgz,p-》jj,p-》kk,p-》yfgz,p-》sk,p-》sfgz#define END "---------------------------------------------------------------------------- \n"#define N 60int saveflag=0; /*是否需要存盘的标志变量*//*定义与职工有关的数据结构*/typedef struct employee /*标记为employee*/{char num; /*职工编号*/char name; /*职工姓名*/float jbgz; /*基本工资*/float jj; /*奖金*/float kk; /*扣款*/float yfgz; /*应发工资*/float sk; /*税款*/float sfgz; /*实发工资*/}ZGGZ;void menu() /*主菜单*/{system("cls"); /*调用DOS命令,清屏.与clrscr()功能相同*/textcolor(10); /*在文本模式中选择新的字符颜色*/gotoxy(10,5); /*在文本窗口中设置光标*/cprintf(" The Employee’ Salary Management System \n");gotoxy(10,8);cprintf(" *************************Menu********************************\n");gotoxy(10,9);cprintf(" * 1 input record 2 delete record *\n");gotoxy(10,10);cprintf(" * 3 search record 4 modify record *\n");gotoxy(10,11);cprintf(" * 5 insert record 6 count record *\n");gotoxy(10,12);cprintf(" * 7 sort reord 8 save record *\n");gotoxy(10,13);cprintf(" * 9 display record 0 quit system *\n");gotoxy(10,14);cprintf(" *************************************************************\n");/*cprintf()送格式化输出至文本窗口屏幕中*/}void printheader() /*格式化输出表头*/{ printf(HEADER1); printf(HEADER2); printf(HEADER3);}void printdata(ZGGZ pp) /*格式化输出表中数据*/{ ZGGZ* p; p=&pp printf(FORMAT,DATA);}void Disp(ZGGZ tp中存储的记录,内容为employee结构中定义的内容*/{int i;if(n==0) /*表示没有职工工资记录*/{ printf("\n=====》Not employee record!\n"); getchar(); return;}printf("\n\n");printheader(); /*输出表格头部*/i=0;while(i《n) /*逐条输出数组中存储的职工信息*/{ printdata(tp); i++; printf(HEADER3);}getchar();}void Wrong() /*输出按键错误信息*/{printf("\n\n\n\n\n***********Error:input has wrong! press any key to continue**********\n");getchar();}void Nofind() /*输出未查找此职工的信息*/{printf("\n=====》Not find this employee record!\n");}/*************************************************************作用:用于定位数组中符合要求的记录,并返回保存该记录的数组元素下标值参数:findmess保存按什么在数组中查找;**************************************************************/int Locate(ZGGZ tp){int i=0;if(strcmp(nameornum,"num")==0) /*按职工编号查询*/{ while(i《n) { if(strcmp(tp.num,findmess)==0) /*若找到findmess值的职工编号*/ return i; i++; }}else if(strcmp(nameornum,"name")==0) /*按职工姓名查询*/{ while(i《n) { if(strcmp(tp.name,findmess)==0) /*若找到findmess值的姓名*/ return i; i++; }}return -1; /*若未找到,返回一个整数-1*/}/*输入字符串,并进行长度验证(长度《lens)*/void stringinput(char *t,int lens,char *notice){ char n; do{ printf(notice); /*显示提示信息*/ scanf("%s",n); /*输入字符串*/ if(strlen(n)》lens) printf("\n exceed the required length! \n"); /*进行长度校验,超过lens值重新输入*/ }while(strlen(n)》lens); strcpy(t,n); /*将输入的字符串拷贝到字符串t中*/}/*输入数值,0《=数值)*/float numberinput(char *notice){ float t=0.00; do{ printf(notice); /*显示提示信息*/ scanf("%f",&t); /*输入如工资等数值型的值*/ if(t《0) printf("\n score must 》=0! \n"); /*进行数值校验*/ }while(t《0); return t;}/*增加职工工资记录*/int Add(ZGGZ tp,int n){ char ch,num; int i,flag=0; system("cls"); Disp(tp,n); /*先打印出已有的职工工资信息*/ while(1) /*一次可输入多条记录,直至输入职工编号为0的记录才结束添加操作*/ { while(1) /*输入职工编号,保证该编号没有被使用,若输入编号为0,则退出添加记录操作*/ { stringinput(num,10,"input number(press ’0’return menu):"); /*格式化输入编号并检验*/ flag=0; if(strcmp(num,"0")==0) /*输入为0,则退出添加操作,返回主界面*/ {return n;} i=0; while(i《n) /*查询该编号是否已经存在,若存在则要求重新输入一个未被占用的编号*/ { if(strcmp(tp.num,num)==0) { flag=1; break; } i++; } if(flag==1) /*提示用户是否重新输入*/ { getchar(); printf("==》The number %s is existing,try again?(y/n):",num); scanf("%c",&ch); if(ch==’y’||ch==’Y’) continue; else return n; } else {break;} } strcpy(tp.num中*/ stringinput(tp.name,15,"Name:"); tp.jbgz=numberinput("jbgz:"); /*输入并检验基本工资*/ tp.jj=numberinput("jiangjin:"); /*输入并检验奖金*/ tp.kk=numberinput("koukuan:"); /*输入并检验扣款*/ tp.kk; /*计算应发工资*/ tp.yfgz*0.12; /*计算税金,这里取应发工资的百分之一十二*/ tp.sk; /*计算实发工资*/ saveflag=1; n++; } return n;}/*按职工编号或姓名,查询记录*/void Qur(ZGGZ tp,int n){int select; /*1:按编号查,2:按姓名查,其他:返回主界面(菜单)*/char searchinput; /*保存用户输入的查询内容*/int p=0;if(n《=0) /*若数组为空*/{ system("cls"); printf("\n=====》No employee record!\n"); getchar(); return;}system("cls");printf("\n =====》1 Search by number =====》2 Search by name\n");printf(" please choice:");scanf("%d",&select);if(select==1) /*按编号查询*/ { stringinput(searchinput,10,"input the existing employee number:"); p=Locate(tp,n,searchinput,"num");/*在数组tp中查找编号为searchinput值的元素,并返回该数组元素的下标值*/ if(p!=-1) /*若找到该记录*/ { printheader(); printdata(tp); printf(END); printf("press any key to return"); getchar(); } else Nofind(); getchar();}else if(select==2) /*按姓名查询*/{ stringinput(searchinput,15,"input the existing employee name:"); p=Locate(tp,n,searchinput,"name"); if(p!=-1) { printheader(); printdata(tp); printf(END); printf("press any key to return"); getchar(); } else Nofind(); getchar();}else Wrong(); getchar(); }/*删除记录:先找到保存该记录的数组元素的下标值,然后在数组中删除该数组元素*/int Del(ZGGZ tp,int n){int sel;char findmess;int p=0,i=0;if(n《=0){ system("cls"); printf("\n=====》No employee record!\n"); getchar(); return n;}system("cls");Disp(tp,n);printf("\n =====》1 Delete by number =====》2 Delete by name\n");printf(" please choice:");scanf("%d",&sel);if(sel==1){ stringinput(findmess,10,"input the existing employee number:"); p=Locate(tp,n,findmess,"num"); getchar(); if(p!=-1) { for(i=p+1;i《n;i++) /*删除此记录,后面记录向前移*/ { strcpy(tp.num); strcpy(tp.name); tp.jbgz; tp.jj; tp.kk; tp.yfgz; tp.sk; tp.sfgz; } printf("\n==》delete success!\n"); n--; getchar(); saveflag=1; } else Nofind(); getchar(); }else if(sel==2) /*先按姓名查询到该记录所在的数组元素的下标值*/{ stringinput(findmess,15,"input the existing employee name:"); p=Locate(tp,n,findmess,"name"); getchar(); if(p!=-1) { for(i=p+1;i《n;i++) /*删除此记录,后面记录向前移*/ { strcpy(tp.num); strcpy(tp.name); tp.jbgz; tp.jj; tp.kk; tp.yfgz; tp.sk; tp.sfgz; } printf("\n=====》delete success!\n"); n--; getchar(); saveflag=1; } else Nofind(); getchar();} return n;}/*修改记录。先按输入的职工编号查询到该记录,然后提示用户修改编号之外的值,编号不能修改*/void Modify(ZGGZ tp,int n){char findmess;int p=0;if(n《=0){ system("cls"); printf("\n=====》No employee record!\n"); getchar(); return ;}system("cls");printf("modify employee recorder");Disp(tp,n);stringinput(findmess,10,"input the existing employee number:"); /*输入并检验该编号*/p=Locate(tp,n,findmess,"num"); /*查询到该数组元素,并返回下标值*/if(p!=-1) /*若p!=-1,表明已经找到该数组元素*/{ printf("Number:%s,\n",tp.num); printf("Name:%s,",tp.name); stringinput(tp.name,15,"input new name:"); printf("jbgz:%8.2f,",tp.jbgz); tp.jbgz=numberinput("jbgz:"); printf("jiangjin:%8.2f,",tp.jj); tp.jj=numberinput("jiangjin:"); printf("koukuan:%8.2f,",tp.kk); tp.kk=numberinput("koukuan:"); tp.kk; tp.yfgz*0.12; tp.sk; printf("\n=====》modify success!\n"); getchar(); Disp(tp,n); getchar(); saveflag=1;}else {Nofind(); getchar(); }return ;}/*插入记录:按职工编号查询到要插入的数组元素的位置,然后在该编号之后插入一个新数组元素。*/int Insert(ZGGZ tp,int n){ char ch,num保存输入的新记录的编号*/ ZGGZ newinfo; int flag=0,i=0,kkk=0; system("cls"); Disp(tp,n); while(1) { stringinput(s,10,"please input insert location after the Number:"); flag=0;i=0; while(i《n) /*查询该编号是否存在,flag=1表示该编号存在*/ { if(strcmp(tp.num,s)==0) {kkk=i;flag=1;break;} i++; } if(flag==1) break; /*若编号存在,则进行插入之前的新记录输入操作*/ else { getchar(); printf("\n=====》The number %s is not existing,try again?(y/n):",s); scanf("%c",&ch); if(ch==’y’||ch==’Y’) {continue;} else {return n;} } } /*以下新记录的输入操作与Add()相同*/ while(1) { stringinput(num,10,"input new employee Number:"); i=0;flag=0; while(i《n) /*查询该编号是否存在,flag=1表示该编号存在*/ { if(strcmp(tp.num,num)==0) {flag=1;break;} i++; } if(flag==1) { getchar(); printf("\n=====》Sorry,The number %s is existing,try again?(y/n):",num); scanf("%c",&ch); if(ch==’y’||ch==’Y’) {continue;} else {return n;} } else break; } strcpy(newinfo.num,num); /*将字符串num拷贝到newinfo.num中*/ stringinput(newinfo.name,15,"Name:"); newinfo.jbgz=numberinput("jbgz:"); /*输入并检验jbgz*/ newinfo.jj=numberinput("jiangjin:"); /*输入并检验jiangjin*/ newinfo.kk=numberinput("koukuan:"); /*输入并检验koukuan*/ newinfo.yfgz=newinfo.jbgz+newinfo.jj-newinfo.kk; /*计算yfgz*/ newinfo.sk=newinfo.yfgz*0.12; /*计算sk*/ newinfo.sfgz=newinfo.yfgz-newinfo.sk; saveflag=1; /*在main()有对该全局变量的判断,若为1,则进行存盘操作*/ for(i=n-1;i》kkk;i--) /*从最后一个组织元素开始往向移一个元素位置*/ { strcpy(tp.num); strcpy(tp.name); tp.jbgz; tp.jj; tp.kk; tp.yfgz; tp.sk; tp.sfgz; } strcpy(tp.num,newinfo.num); /*在kkk的元素位置后插入新记录*/ strcpy(tp.name,newinfo.name); tp.jbgz=newinfo.jbgz; tp.jj=newinfo.jj; tp.kk=newinfo.kk; tp.yfgz=newinfo.yfgz; tp.sk=newinfo.sk; tp.sfgz=newinfo.sfgz; n++; Disp(tp,n); printf("\n\n"); getchar(); return n;}/*统计公司的员工的工资在各等级的人数*/void Tongji(ZGGZ tp,int n){int count10000=0,count5000=0,count2000=0,count0=0;int i=0;if(n《=0){ system("cls"); printf("\n=====》Not employee record!\n"); getchar(); return ;}system("cls");Disp(tp,n);i=0;while(i《n){ if(tp.sfgz》=10000) {count10000++;i=i+1;continue;} /*实发工资》10000*/ if(tp.sfgz》=5000) {count5000++;i=i+1;continue;} /*5000《=实发工资《10000*/ if(tp.sfgz》=2000) {count2000++;i=i+1;continue;} /*2000《=实发工资《5000*/ if(tp.sfgz《2000) {count0++;i=i+1;continue;} /*实发工资《2000*/}printf("\n------------------------------the TongJi result--------------------------------\n");printf("sfgz》= 10000:%d (ren)\n",count10000);printf("5000《=sfgz《10000:%d (ren)\n",count5000);printf("2000《=sfgz《 5000:%d (ren)\n",count2000);printf("sfgz《 2000:%d (ren)\n",count0);printf("-------------------------------------------------------------------------------\n");printf("\n\npress any key to return");getchar();}/*利用冒泡排序法实现数组的按实发工资字段的降序排序,从高到低*/void Sort(ZGGZ tp,int n){int i=0,j=0,flag=0;ZGGZ newinfo;if(n《=0){ system("cls"); printf("\n=====》Not employee record!\n"); getchar(); return ;}system("cls");Disp(tp,n); /*显示排序前的所有记录*/for(i=0;i《n;i++){ flag=0; for(j=0;j《n-1;j++) if((tp.sfgz)) { flag=1; strcpy(newinfo.num,tp.num); /*利用结构变量newinfo实现数组元素的交换*/ strcpy(newinfo.name,tp.name); newinfo.jbgz=tp.jbgz; newinfo.jj=tp.jj; newinfo.kk=tp.kk; newinfo.yfgz=tp.yfgz; newinfo.sk=tp.sk; newinfo.sfgz=tp.sfgz; strcpy(tp.num); strcpy(tp.name); tp.jbgz; tp.jj; tp.kk; tp.yfgz; tp.sk; tp.sfgz; strcpy(tp.num,newinfo.num); strcpy(tp.name,newinfo.name); tp.jbgz=newinfo.jbgz; tp.jj=newinfo.jj; tp.kk=newinfo.kk; tp.yfgz=newinfo.yfgz; tp.sk=newinfo.sk; tp.sfgz=newinfo.sfgz; } if(flag==0) break;/*若标记flag=0,意味着没有交换了,排序已经完成*/ } Disp(tp,n); /*显示排序后的所有记录*/ saveflag=1; printf("\n =====》sort complete!\n");}/*数据存盘,若用户没有专门进行此操作且对数据有修改,在退出系统时, 会提示用户存盘*/void Save(ZGGZ tp,int n){FILE* fp;int i=0;fp=fopen("c:\\zggz","wb");/*以只写方式打开二进制文件*/if(fp==NULL) /*打开文件失败*/{ printf("\n=====》open file error!\n"); getchar(); return ;}for(i=0;i《n;i++){ if(fwrite(&tp,sizeof(ZGGZ),1,fp)==1)/*每次写一条记录或一个结构数组元素至文件*/ { continue; } else { break; }}if(i》0){ getchar(); printf("\n\n=====》save file complete,total saved’s record number is:%d\n",i); getchar(); saveflag=0;}else{system("cls"); printf("the current link is empty,no employee record is saved!\n"); getchar(); }fclose(fp); /*关闭此文件*/}void main(){ ZGGZ gz; /*定义ZGGZ结构体*/ FILE *fp; /*文件指针*/ int select; /*保存选择结果变量*/ char ch; /*保存(y,Y,n,N)*/ int count=0; /*保存文件中的记录条数(或元素个数)*/ fp=fopen("C:\\zggz","ab+"); /*以追加方式打开二进制文件c:\zggz,可读可写,若此文件不存在,会创建此文件*/ if(fp==NULL) { printf("\n=====》can not open file!\n"); exit(0); }while(!feof(fp)){ if(fread(&gz,sizeof(ZGGZ),1,fp)==1) /*一次从文件中读取一条职工工资记录*/ count++;}fclose(fp); /*关闭文件*/printf("\n==》open file sucess,the total records number is : %d.\n",count);getchar();menu();while(1){ system("cls"); menu(); printf("\n Please Enter your choice(0~9):"); /*显示提示信息*/ scanf("%d",&select); if(select==0) { if(saveflag==1) /*若对数组的数据有修改且未进行存盘操作,则此标志为1*/ { getchar(); printf("\n==》Whether save the modified record to file?(y/n):"); scanf("%c",&ch); if(ch==’y’||ch==’Y’) Save(gz,count); } printf("\n===》thank you for useness!"); getchar(); break; } switch(select) { case 1:count=Add(gz,count);break; /*增加职工工资记录*/ case 2:count=Del(gz,count);break; /*删除职工工资记录*/ case 3:Qur(gz,count);break; /*查询职工工资记录*/ case 4:Modify(gz,count);break; /*修改职工工资记录*/ case 5:count=Insert(gz,count);break; /*插入职工工资记录*/ case 6:Tongji(gz,count);break; /*统计职工工资记录*/ case 7:Sort(gz,count);break; /*排序职工工资记录*/ case 8:Save(gz,count);break; /*保存职工工资记录*/ case 9:system("cls");Disp(gz,count);break; /*显示职工工资记录*/ default: Wrong();getchar();break; /*按键有误,必须为数值0-9*/ } }}

c++职工管理信息系统

附1、:使用说明

输入1注册信息:注册职工信息时提示注册员工的个数,且系统会自动给出职工编号,然后输入职工姓名、性别、年龄、学历、工资、地址、联系电话。

输入2浏览信息:操作后可以浏览该公司所有职工的信息。

输入3查询信息:可以根据不同的信息查询公司职工的信息。如按照职工的编号、职工的学历、职工的联系电话。知道职工的其中一个信息就可以查到他的其他信息。实现了掌握少量的信息就可以找到相关的信息。

输入4删除信息:介入这一界面时,先显示全部职工的信息,再输入需要删除职工的名字。操作后可显示删除后的全部职工的信息。

输入5添加信息:进入这一界面后,先显示原来的职工的信息,再提示添加信息的人数,然后输入新的职工的信息。操作完后可自动显示添加完后的全部职工的信息。

输入6修改信息:介入界面后,显示全部职工的信息,再提示输入需要修改的职工的姓名,输入后显示该职工原来的信息且提示是否修改:输入1时修改,输入0时不修改。需要修改时,提示需要修改的选项的序号,然后进行修改。修改后系统自动显示修改后的职工的信息。

 

附件:职工信息管理系统代码

file.c

此文件主要包含涉及文件读写功能的函数。

/************************************************************/ 

/*                 File: file.c                                 */ 

/************************************************************/ 

#include 《stdio.h》

#include 《windows.h》

#include 《time.h》

#include 《string.h》

#define N 100      /*宏定义*/

struct employee    

{ int num;         /*职工编号*/

 char name;    /*职工姓名*/

 char sex;       /*职工性别*/

 char bir;      /*职工出生年月*/

char xueli;    /*职工学历*/

 int wage;         /*职工工资*/

 char addr;     /*职工地址*/

 char tel;       *职工电话*/

}em;         /*定义一个结构体*/

void menu()     /*菜单函数*/

{   

printf("              ☆☆☆信息管理与信息系统☆☆☆\n");

printf("\n");

printf("                                   B0902 李颖\n");

printf("\n");

 printf("        ******************职工信息管理****************\n");

    printf("           1.录入职工信息");

 printf("           2.浏览职工信息\n");

 printf("           3.查询职工信息");

 printf("           4.删除职工信息\n");

 printf("           5.添加职工信息");

    printf("           6.修改职工信息\n");

 printf("           7.退出管理系统\n");

 printf("        **********************************************\n");

    printf("\n");

    printf("\n");

    

}

void main()

{   

 menu();  /*调用菜单函数*/

 int n,flag;

 char a;

 do

 {  printf("请选择你需要操作的步骤(1--7):\n");

    scanf("%d",&n);

    if(n》=1&&n《=7)

    {

    flag=1;

    break;

    }

    else

    {

   flag=0;

   printf("您输入有误,请重新选择!");

    }

 }

    while(flag==0);

    while(flag==1)

  {  switch(n)

  {

        case 1:printf("           ◆◆◆输入职工信息◆◆◆\n");printf("\n");input();break;

       case 2:printf("              ◆◆◆浏览职工信息◆◆◆\n");printf("\n");display();break;

       case 3:printf("              ◆◆◆查询职工信息◆◆◆\n");printf("\n");search();break; 

       case 4:printf("              ◆◆◆删除职工信息◆◆◆\n");printf("\n");del();break;

    case 5:printf("                 ◆◆◆添加职工信息◆◆◆\n");printf("\n");add();break;

       case 6:printf("              ◆◆◆修改职工信息◆◆◆\n");printf("\n");modify();break;

      case 7:exit(0);break;

     default :break;

  }

     getchar();

     printf("\n");

     printf("是否继续进行(y or n):\n");

     scanf("%c",&a);

  if(a==’y’)

  {

     flag=1;

     system("cls");  /*清屏*/

     menu(); /*调用菜单函数*/

     printf("请再次选择你需要操作的步骤(1--6):\n");

     scanf("%d",&n);

     printf("\n");

  }

  else 

  exit(0);

 }

 

}

void input()   /*录入函数*/

{

  int i,m;

  printf("请输入需要创建信息的职工人数(1--100):\n");

  scanf("%d",&m);

  for (i=0;i《m;i++)

  {

  printf("职工号: ");

  srand((int)time(0));

  em.num=rand()%10000+20000000;

  if(em.num)

  printf("%8d ",em.num);

  printf("\n");

  printf("请输入姓名:  ");

  scanf("%s",&em.name);

  getchar();

  printf("请输入性别:  ");

  scanf("%s",&em.sex);

  printf("请输入出生年月:  ");

  scanf("%s",&em.bir);

  printf("请输入学历:  ");

  scanf("%s",&em.xueli);

  printf("请输入工资:  ");

  scanf("%d",&em.wage);

  printf("请输入住址:  ");

  scanf("%s",&em.addr);

  printf("请输入电话:  ");

  scanf("%s",&em.tel);

  printf("\n");

}

   printf("\n创建完毕!\n");

   save(m);

}

void save(int m)                               /*保存文件函数*/

{

 int i;

 FILE*fp;

 if ((fp=fopen("employee_list","wb"))==NULL)  /*创建文件并判断是否能打开*/

 {

  printf ("cannot open file\n");

     exit(0);

 }

 for (i=0;i《m;i++)                            /*将内存中职工的信息输出到磁盘文件中去*/

   if (fwrite(&em,sizeof(struct employee),1,fp)!=1)

   printf("file write error\n");

   fclose(fp);

}

int load()                                    /*导入函数*/

{

     FILE*fp;

 int i=0;

   if((fp=fopen("employee_list","rb"))==NULL)

 {

  printf ("cannot open file\n");

     exit(0);

 }

 else 

 {

  do 

  {

        fread(&em,sizeof(struct employee),1,fp);

     i++;

  }

  while(feof(fp)==0);

 }

 fclose(fp);

 return(i-1);

}

 void display()                       /*浏览函数*/

{

 int i;

 int m=load();

 printf("\n  职工号\t姓名\t性别\t出生年月\t学历\t工资\t住址\t电话   \n");

 for(i=0;i《m;i++)                       /*m为输入部分的职工人数*/

     printf("\n  %6d\t%s\t%4s\t%s\t%s\t%d\t%s\t%s\n",em.tel);  

}

void del()                              /*删除函数*/

{ int m=load();

 int i,j,n,t,flag;

 char name;

 printf("\n 原来的职工信息:\n");

    display();                          /* 调用浏览函数*/

    printf("\n");

 printf("请输入要删除的职工的姓名:\n");

 scanf("%s",name);

 for(flag=1,i=0;flag&&i《m;i++)

 {

  if(strcmp(em.name,name)==0)

  {

   printf("\n已找到此人,原始记录为:\n");

            printf("\n职工号\t姓名\t性别\t出生年月\t学历\t工资\t住址\t电话   \n");

   printf("\n%d\t%s\t%s\t%s\t%s\t%d\t%s\t%s\n",em.tel);  

            printf("\n确实要删除此人信息请按1,不删除请按0\n");

   scanf("%d",&n);

            if(n==1)                    /*如果删除,则其他的信息都往上移一行*/

   {

     for(j=i;j《m-1;j++)

     {

    strcpy(em.name);

                em.num;

                strcpy(em.sex);

                 strcpy(em.bir);

                strcpy(em.xueli);

    em.wage;  

                strcpy(em.addr);

                strcpy(em.tel);

     }

    flag=0;

   }

  }

 }

 if(!flag)

    m=m-1;

 else

    printf("\n对不起,查无此人!\n");

    printf("\n 浏览删除后的所有职工信息:\n");

    save(m);                           /*调用保存函数*/

    display();                         /*调用浏览函数*/

 printf("\n继续删除请按1,不再删除请按0\n");

 scanf("%d",&t);

 switch(t)

 {

    case 1:del();break;

    case 0:break;

    default :break;

 }

}

void add()                                   /*添加函数*/

{

 FILE*fp;

 int n;

    int count=0;

    int i;

    int m=load();

    printf("\n 原来的职工信息:\n");

    display();                             /* 调用浏览函数*/

    printf("\n");

    fp=fopen("emploee_list","a");

    printf("请输入想增加的职工数:\n");

 scanf("%d",&n);

    for (i=m;i《(m+n);i++)

  {

  printf("\n 请输入新增加职工的信息:\n");

  printf("请输入职工号:  ");

  srand((int)time(0));

  em.num=rand()%10000+20000000;

  if(em.num)

       printf("%8d ",em.num);

  printf("\n");

        printf("请输入姓名:  ");

     scanf("%s",&em.name);

        getchar();

        printf("请输入性别:  ");

     scanf("%s",&em.sex);

        printf("请输入出生年月:  ");

     scanf("%s",&em.bir);

     printf("请输入学历:  ");

     scanf("%s",&em.xueli);

     printf("请输入工资:  ");

     scanf("%d",&em.wage);

      printf("请输入住址:  ");

     scanf("%s",&em.addr);

        printf("请输入电话:  ");

     scanf("%s",&em.tel);

        printf("\n");

     count=count+1;

  printf("已增加的人数:\n");

     printf("%d\n",count);

 }

    printf("\n添加完毕!\n"); 

    m=m+count;

 printf("\n浏览增加后的所有职工信息:\n");

 printf("\n");

 save(m);

    display();

   fclose(fp);

}

void search()                                /*查询函数*/

{

    int t,flag;

 do

 {

    printf("\n按职工号查询请按1 ; 按学历查询请按2 ; 按电话号码查询请按3,进入主函数按4\n");

    scanf("%d",&t);

    if(t》=1&&t《=4)

    {

    flag=1;

    break;

    }

    else

    {

   flag=0;

   printf("您输入有误,请重新选择!");

    }

 }

    while(flag==0);

    while(flag==1)

 {

    switch(t)

    { 

     case 1:printf("按职工号查询\n");search_num();break;

     case 2:printf("按学历查询\n");search_xueli();break;

     case 3:printf("按电话号码查询\n");search_tel();break;

  case 4:main();break;

     default:break;

    }

    }

}

void search_num()

{

  int num;

  int i,t;

  int m=load();

  printf("请输入要查找的职工号(20001111---20009999):\n");

  scanf("%d",&num);

  for(i=0;i《m;i++)

    if(num==em.num)

 {  

    printf("\n已找到此人,其记录为:\n");

       printf("\n职工号\t姓名\t性别\t出生年月\t学历\t工资\t住址\t电话   \n");

    printf("\n%d\t%s\t%s\t%s\t%s\t%d\t%s\t%s\n",em.tel);  

    break;

 }

   if(i==m)  

    printf("\n对不起,查无此人\n");

   printf("\n");

   printf("返回查询函数请按1,继续查询职工号请按2\n");

   scanf("%d",&t);

   switch(t)

   { 

   case 1:search();break;

      case 2: break;

   default:break;

   }

}

 void search_xueli()

{

  char xueli;

  int i,t;

  int m=load();

  printf("请输入要查找的学历:\n");

  scanf("%s",xueli);

  for(i=0;i《m;i++)

   if(strcmp(em.xueli,xueli)==0)

 {

    printf("\n已找到,其记录为:\n");

    printf("\n职工号\t姓名\t性别\t出生年月\t学历\t工资\t住址\t电话   \n");

    printf("\n%d\t%s\t%s\t%s\t%s\t%d\t%s\t%s\n",em.tel);  

    

 }

  if(i==m) 

    printf("\n对不起,查无此人\n");

   printf("\n");

   printf("返回查询函数请按1,继续查询学历请按2\n");

   scanf("%d",&t);

  switch(t)

  { 

   case 1:search();break;

      case 2:break;

   default :break;

  }

 }

void search_tel()

{

  char tel;

  int i, t;

  int m=load();

  printf("请输入要查找的电话号码:\n");

  scanf("%ld",&tel);

  for(i=0;i《m;i++)

    if(strcmp(em.tel,tel)==0)

 {  

    printf("\n已找到此人,其记录为:\n");

       printf("\n职工号\t姓名\t性别\t出生年月\t学历\t工资\t住址\t电话   \n");

    printf("\n%d\t%s\t%s\t%s\t%s\t%d\t%s\t%s\n",em.tel);  

    break;

 }

    if(i==m)  

    printf("\n对不起,查无此人\n");

   printf("\n");

   printf("返回查询函数请按1,继续查询电话号码请按2\n");

   scanf("%d",&t);

  switch(t)

  { 

   case 1:search();break;

      case 2:break;

   default :break;

  }

  }

void modify()                            /*修改函数*/

{

      int num;

      char name;

      char sex;  

 char bir;

      char xueli;

      int wage;

      char addr;

      char tel;

      int b,c,i,n,t,flag; 

    int m=load();                         /*导入文件内的信息*/

       printf("\n 原来的职工信息:\n");

       display();                         /* 调用浏览函数*/

       printf("\n");

       printf("请输入要修改的职工的姓名:\n");

       scanf("%s",name);

       for(flag=1,i=0;flag&&i《m;i++)

    {

       if(strcmp(em.name,name)==0)

    {

       printf("\n已找到此人,原始记录为:\n");

       printf("\n职工号\t姓名\t性别\t出生年月\t学历\t工资\t住址\t电话   \n");

printf("\n%d\t%s\t%s\t%s\t%s\t%d\t%s\t%s\n",em.tel);  

            printf("\n确实要修改此人信息请按1 ; 不修改请按0\n");

      scanf("%d",&n);

      if(n==1)

   {

      printf("\n需要进行修改的选项\n 1.职工号 2.姓名 3.性别 4.出生年月 5.学历 6.工资 7.住址 8.电话\n");  

      printf("请输入你想修改的那一项序号:\n");  

      scanf("%d",&c);  

      if(c》8||c《1)  

      printf("\n选择错误,请重新选择!\n");  

  }

      flag=0;

  }

  }

     if(flag==1)

     printf("\n对不起,查无此人!\n");  

     do  

 {

      switch(c)                  /*因为当找到第i个职工时,for语句后i自加了1,所以下面的应该把改后的信息赋值给第i-1个人*/

  {  

      case 1:printf("职工号改为: ");

      scanf("%d",&num);

      em.num=num;

      break;  

      case 2:printf("姓名改为: ");

      scanf("%s",name);

      strcpy(em.name,name); 

      break;  

      case 3:printf("性别改为: ");

       scanf("%s",sex);

       strcpy(em.sex,sex);

       break;  

       case 4:printf("出生年月改为: ");

       scanf("%s",bir);

       strcpy(em.bir,bir);

       break;  

       case 5:printf("学历改为: ");

       scanf("%s",xueli);

       strcpy(em.xueli,xueli); 

       break;  

       case 6:printf("工资改为: ");

       scanf("%d",&wage);

       break;  

       case 7:printf("住址改为: ");

       scanf("%s",addr);

       strcpy(em.addr,addr);

       break;  

       case 8:printf("电话改为: ");

       scanf("%s",tel);

       strcpy(em.tel,tel);

       break;  

  } 

       printf("\n");

       printf("\n是否确定所修改的信息?\n 是 请按1 ; 不,重新修改 请按2:  \n"); 

       scanf("%d",&b);

   }  

       while(b==2);

       printf("\n浏览修改后的所有职工信息:\n");

       printf("\n");

       save(m);

       display();

       printf("\n继续修改请按1,不再修改请按0\n");

       scanf("%d",&t);

       switch(t)

 {

       case 1:modify();break;

       case 0:break;

       default :break;

 }

  

}

职工信息管理系统

我有一个类似的,你把结构内容修改一下就好啦!别喷我……因为这两个几乎一个意思的。觉得还行就采纳吧,最好给点分,这个太少了……#include《stdio.h》#include《stdlib.h》struct clientData{//定义结构 int record; char s; int amount; float price;};int enterChoice(void);void newRecord(FILE* fPtr);void listRecord(FILE* fPtr);void addRecord(FILE* fPtr);void deleteRecord(FILE* fPtr);//函数声明main(){ int choice;//存储用户输入的数字 FILE* fPtr=NULL; if((fPtr=fopen("hardware.dat","r+"))==NULL)//如果不存在进行提示 { printf("can’t open the file hardware.dat.\nYou should establish one first!\n"); if((fPtr=fopen("hardware.dat","w"))!=NULL)//用w方式打开,创建文件 printf("The file hardware.dat is established now.Please run again\n"); } else//成功打开 { choice=enterChoice();//读入用户的选择 while(choice!=5)//循环进行操作 { switch(choice)//进行选择 { case 1: newRecord(fPtr); break; case 2: listRecord(fPtr); break; case 3: addRecord(fPtr); break; case 4: deleteRecord(fPtr); break; default: printf("A wrong input\n"); } choice=enterChoice(); } fclose(fPtr);//关闭文件 } system("pause"); return 0;}int enterChoice(void)//读取用户选择的函数{ int choice; printf("\nPlease enter your choice\n" "1 - set up a new record\n" "2 - list the record\n" "3 - add account(s) to the list\n" "4 - delete an account in the list\n" "5 - end of run\n?");//打印提示 scanf("%d",&choice); return choice;}void newRecord(FILE* fPtr)//进行初始化的函数{ int i; struct clientData blank={0,"",0,0.0};//建立空结构 rewind(fPtr); for(i=1;i《=100;i++) fwrite(␣,sizeof(struct clientData),1,fPtr); printf("The list is empty now\n"); return;}void listRecord(FILE* fPtr)//打印文件内容的函数{ struct clientData data; rewind(fPtr); printf("Record Name \t\t Amount Price\n");//打印第一行 fread(&data,sizeof(struct clientData),1,fPtr); while(!feof(fPtr)) { if(data.record!=0)//当记录不是空时打印数据 printf("%5d %-20s %5d %7.2f\n", data.record,data.s,data.amount,data.price); fread(&data,sizeof(struct clientData),1,fPtr); } return;}void addRecord(FILE* fPtr)//添加的记录函数{ struct clientData data; printf("\nPlease input the account number 1-100,0 to end\n" "If the account is existential, this will erase former data!\n?"); scanf("%d",&data.record); while(data.record!=0)//循环进行添加 { if(data.record《1||data.record》100) printf("Please input the right number!\n");//错误提示 else { printf("Please input the name,enter to end(no longer than 20)\n?"); getchar();//必须加入,否则会读入回车出错! gets(data.s);//gets函数只用加上地址即可,不用%s!! printf("Pease input amount(an integer), the price:\n?"); scanf("%d,%f",&data.amount,&data.price);//读入数据 fseek(fPtr,(data.record-1)*sizeof(struct clientData),SEEK_SET);//查找位置读入 fwrite(&data,sizeof(struct clientData),1,fPtr); printf("Add successfully!\n\n"); } printf("Please input the account number 1-100,0 to end\n?");//再次读入 getchar(); scanf("%d",&data.record); } return;}void deleteRecord(FILE* fPtr)//删除记录的函数{ struct clientData data; struct clientData blank={0,"",0,0.0};//空结构 printf("Please input the account number you want to delete\n?"); scanf("%d",&data.record); fseek(fPtr,(data.record-1)*sizeof(struct clientData),SEEK_SET);//进行定位 fread(&data,sizeof(struct clientData),1,fPtr); if(data.record==0) printf("Account %d doesn’t exist!\n"); else {//由于查找后读入一次,位置指针已经变化,需要再次定位 fseek(fPtr,(data.record-1)*sizeof(struct clientData),SEEK_SET); fwrite(␣,sizeof(struct clientData),1,fPtr);//写入空记录 printf("The account is removed!\n\n"); } return;}

职工工资信息管理系统(C语言,TC环境下编译)

(C语言)职工信息管理 有任何问题可以到这里留言: #include《string.h》 void menu() { int n,w1; do { printf("\t\t************************************************\n\n"); printf("\t\t************************************************\n\n"); printf("\t\t *** choose function ************\n\n"); printf("\t\t *** 1 Enter new data ************\n\n"); printf("\t\t *** 2 Modify data ************\n\n"); printf("\t\t *** 3 Search by people.xueli and num*****\n\n"); printf("\t\t *** 4 Browse data ************\n\n"); printf("\t\t *** 5 add data ************\n\n"); printf("\t\t *** 6 Exit ************\n\n"); printf("\t\t************************************************\n\n"); printf("\t\t************************************************\n\n"); printf("Choose your number(1-6):\b\b"); scanf("%d",&n); if(n《1||n》6) w1=1; else w1=0; } while(w1==1); switch(n) { case 1:enter();break; case 2:modify();break; case 3:search();break; case 4:browse();break; case 5:add();break; case 6:exit(0); } } main() { system("cls"); menu(); } #define N 100 struct people { char num; char name; char sex; char age; char xueli; char gongzhi; char address; char telephone; }people; # include 《stdio.h》 enter() { int i,n; printf("How many people(0-%d)?:",N-1); scanf("%d",&n); printf("\n Enter data now\n\n"); for(i=0;i《n;i++) { printf("\n Input %dth people record.\n",i+1); input(i); } if(i!=0)save(n); printf_back(); } browse() { int i,j,n; n=load(); printf_face(); for(i=0;i《n;i++) { if((i!=0)&&(i%10==0)) { printf("\n\nPass any key to continue ...."); getch(); puts("\n\n"); } printf_one(i) ; } printf("\tThere are %d record.\n",n); printf("\nPass any key to back ..."); getch(); menu(); } add() { int i,n,m,k; FILE*fp; n=load(); printf("How many people are you want to add(0-%d)?:",N-1-n); scanf("%d",&m); k=m+n; for(i=n;i《k;i++) { printf("\nInput %dth people record.\n",i-n+1 ); input(i); } if((fp=fopen("Pro.txt","ab"))==NULL) { printf("cannot open file\n"); } for(i=n;i《k;i++) if(fwrite(&people,sizeof(struct people),1,fp)!=1) printf("file write error\n"); fclose(fp); printf_back(); } search() { int i,n,k,w1=1,w2,w3,w4,m,a; struct people p; n=load(); do { printf("\n\nWhich way do you want to choose? \n\t1).By xueli 2).By num \b\b"); scanf("%d",&m); switch(m) { case 1: do { k=-1; printf("\n\nEnter xeuli that you want to search! xueli."); scanf("%s",p.xueli); printf_face(); for(i=0;i《n;i++) if(strcmp(p.xueli,people.xueli)==0) { k=i; printf_one(k);break; } if(k==-1) { printf("\n\nNO exist!please"); printf("\n\nAre you again?\n\t1).again 2).NO and back \b\b"); scanf("%d",&w1); if(w1==2) printf_back(); } } while(k==-1&&w1==1);break; case 2: do {k=-1; printf("\n\nEnter num that you want to search! num."); scanf("%s",p.num); printf_face(); for(i=0;i《n;i++) if(strcmp(p.num,people.num)==0) {k=i; printf_one(k);break; } if(k==-1) {printf("\n\nNO exist!please"); printf("\n\nAre you again?\n\t1).again 2).NO and back \b\b"); scanf("%d",&w1); if(w1==2) printf_back(); } } while(k==-1&&w1==1);break; } w4=0;w3=0; if(k!=-1) {printf("\n\nWhat do you want to do?\n\t 1).Search 2).Modify 3).Delete 4).Back menu \b\b"); scanf("%d",&w2); switch(w2) {case 2:w3=modify_data(k,n);break; case 3:{printf("\nAre you sure?\n\t 1).Sure 2).No and back \b\b"); scanf("%d",&w4); if(w4==1) for(a=k;a《n;a++) {strcpy(people.num); strcpy(people.name); strcpy(people.sex); strcpy(people.age); strcpy(people.xueli); strcpy(people.gongzhi); strcpy(people.address); strcpy(people.telephone); } break; } } if(w3==1||w4==1) {save(n); printf("\n\nSuccessful.^_^."); printf("\n\nWhant do you want to do? \n\t 1).Search another 2).Back \b\b" ); scanf("%d",&w2); } } } while(w2==1); menu(); } modify() {struct people p; FILE *fp; int i,n,k,w0=1,w1,w2=0; n=load(); do { k=-1; printf_face(); for(i=0;i《n;i++) {if((i!=0)&&(i%10==0)) {printf("\n\nRemember NO.which needed modify.pass any key to contiune ..."); getch(); puts("\n\n"); } printf_one(i); } do {printf("\n\nEnter NO.that you want to modify! NO.:"); scanf("%s",p.num); for(i=0;i《n;i++) if(strcmp(p.num,people.num)==0) {k=i; p=people; } if(k==-1)printf("\n\nNO exist!please again"); }while(k==-1); printf_face(); printf_one(k); w1=modify_data(k,n); if(w1==1) {printf("\nSuccessful ^_^.\n\nAre you modify another ?\n\n\t 1).Yes 2).Back with save\t\b\b"); scanf("%d",&w0); w2=1; } else {w0=0; if(w2==1) people=p; } if(w0!=1&&w2==1) save(n); }while(w0==1); menu(); } save(int n) {FILE *fp; int i; if((fp=fopen("Pro.txt","wb"))==NULL) {printf("\nCannot open file\n"); return NULL; } for(i=0;i《n;i++) if(people.num!=0) if(fwrite(&people,sizeof(struct people),1,fp)!=1) printf("file write error\n"); fclose(fp); } load() {FILE *fp; int i; if((fp=fopen("Pro.txt","rb"))==NULL) {printf("\nCannot open file\n"); return NULL; } for(i=0;!feof(fp);i++) fread(&people,sizeof(struct people),1,fp); fclose(fp); return(i-1); } input(int i) { no_input(i,i); printf("num:"); scanf("%s",people.num); printf("name:"); scanf("%s", people.name) ; printf("sex:"); scanf("%s",people.sex); printf("age:"); scanf("%s",people.age); printf("xueli:"); scanf("%s",people.xueli); printf("gongzhi:"); scanf("%s",people.gongzhi); printf("address:"); scanf("%s",people.address); printf("telephone:"); scanf("%s",people.telephone); } modify_data(int i) {int c,w1; do {puts("\nmodify by=》\n\n 1).num 2).name 3).sex 4).ages 5).xueli 6)gongzhi 7)address 8)telephone "); printf("Which you needed?:\b\b"); scanf("%d",&c); if(c》8||c《1) {puts("\nChoice error!Please again!"); getchar(); } }while(c》8||c《1); do {switch(c) { case 1:printf("num:");scanf("%s",people.num);break; case 2:printf("name:");scanf("%s",people.name);break; case 3:printf("sex:");scanf("%s",people.sex);break; case 4:printf("age:");scanf("%s",people.age);break; case 5:printf("xueli:");scanf("%s",people.xueli);break; case 6:printf("gongzhi:");scanf("%s",people.gongzhi);break; case 7:printf("address:");scanf("%s",people.address);break; case 8:printf("telephone:");scanf("%s",people.telephone);break; } puts("\nNow:\n"); printf_face(); printf_one(i); printf("\nAre you sure?\n\n\t 1).Sure 2).No and remodify 3).Back without save in this time \b\b"); scanf("%d",&w1); } while(w1==2); return(w1); } no_input(int i,int n) {int j,k,w1; do {w1=0; for(j=0;people!=’\0’;j++) if(people》’9’) {puts("Input error!Only be made up of(0-9).Please reinput!\n"); w1=1;break; } if(w1!=1) for(k=0;k《n;k++) if(k!=i&&strcmp(people.num)==0) {puts("This record is exist.please reinput!\n"); } } while(w1==1); } printf_face() { printf("\nnum name sex ages xueli gongzhi address telephone \n"); } printf_one(int i) { int j; printf("%7s%7s%7s%7s%7s%7s%10s%12s\n",people.age,people .telephone); } printf_back() { int j,w; printf("\n\n\tSuccessful.^_^\n\n"); printf("What do you want you to do?\n\n\t1).Browse all now\t2).Back: \b\b"); scanf("%d",&w); if(w==1) browse(); else menu(); } 参考资料:http://moonrosa.googlepages.com/cyuyan_zgglxt

职工信息管理系统:(c++程序设计)详细如下

//职工信息管理// BCB6下通过#include 《iostream》using namespace std;typedef enum{m=1, f} gender;typedef enum{none, salesman, technician, salesmanager, manager} position;typedef float RMB;class Employee{public: Employee(int n, string nm, int yr, gender sx) :num(n),name(nm),age(yr),sex(sx),salary(0), rank(1),pos(none){ } virtual void Print() { cout《《num《《" "《《name《《" "《《age《《" "《《((sex==1)? "male":"female")《《" "《《rank《《"级 薪水"《《salary《《" 职务 "; ShowPos(); } void SetPos(position ps){pos=ps;} void ShowPos() { switch (pos) { case salesman: cout《《"salesman"; break; case technician: cout《《"technician"; break; case salesmanager: cout《《"salesmanager"; break; case manager: cout《《"manager";break; case none: cout《《"none"; break; } cout《《endl; } virtual RMB Payment(){ return salary=0;};protected: int num; string name; int age; gender sex; position pos; int rank; RMB salary;};class Salesman: virtual public Employee{public: Salesman(int n, string nm, int yr, gender sx) :Employee(n, nm, yr, sx) {Employee::SetPos(salesman); Prompt();} Salesman(Employee &emp):Employee(emp) {Employee::SetPos(salesman); Prompt();} virtual RMB Payment(){ return salary=0.04*sales;} //调用该函数设置薪水salary,并可返回值 void Prompt();protected: RMB sales; //销往额,子类对象特有的属性};void Salesman::Prompt() { cout《《"Num: "《《num《《" "《《name《《endl; cout《《"请输入销售额: "; cin》》 sales; Payment(); cout《《endl; }class Manager:virtual public Employee{public: Manager(int n, string nm, int yr, gender sx) :Employee(n, nm, yr, sx) {SetPos(manager); rank=4; salary=8000;} Manager(Employee &emp):Employee(emp) {Employee::SetPos(manager);rank=4; salary=8000;}};class SalesManager: public Manager, public Salesman{public: SalesManager(int n, string nm, int yr, gender sx) : Employee(n, nm, yr, sx),Manager(n, nm, yr, sx), Salesman(n, nm, yr, sx) {pos=salesmanager; rank=3; Payment();} SalesManager(Employee &emp):Employee(emp),Manager(emp),Salesman(emp){pos=salesmanager; rank=3; Payment();} virtual RMB Payment(){ return salary=5000+ 0.005*sales;} //调用该函数设置薪水salary,并可返回值};class Technician: public Employee{public: Technician(int n, string nm, int yr, gender sx) :Employee(n, nm, yr, sx) {Employee::SetPos(technician); rank=2; Prompt();} Technician(Employee &emp):Employee(emp) { Employee::SetPos(technician); rank=2; Prompt();} virtual RMB Payment(){ return salary=100*work_hours;} //调用该函数设置薪水salary,并可返回值 void Prompt() { cout《《"Num: "《《num《《" "《《name《《endl; cout《《"请输入工作小时数: "; cin》》 work_hours; Payment(); cout《《endl; }private: int work_hours; //工作小时数,子类对象特有的属性};int main(void ){ const int N=4; cout《《"测试一:"《《endl; Salesman wang(101,"wang",30,f); Technician Li(102,"Li", 25,m); SalesManager Sman(105, "Sman", 40, f); wang.Print(); Li.Print(); Sman.Print(); Employee* empl; //基类对象指针的数组 cout《《endl; cout《《"测试二:"《《endl; cout《《"请输入职员信息: 姓名(字母) 年龄 性别(m/f) 回车"《《 endl; for (int i=0; i《N; ++i) { string name; int age; char x; gender sex; cin》》name; cin》》age; cin》》x; if (x==’m’) sex=m; else sex=f; empl=new Employee(1001+i, name, age, sex); //生成基类对象 empl-》Print(); cin.clear(); std::string t; std::getline(cin,t); //将当前行从缓存中取出 } cout《《endl; cout《《"指派职务,1.salesman,2.technician,3.manager,4.salesmanager"《《endl; cout《《"请键入数字."《《 endl; int pos; for (int i=0; i《N; ++i) { empl-》Print(); cout《《"职务: "; cin》》pos; cin.clear(); string t; getline(cin,t); Employee *ptnew; //基类指针 switch (pos) //根据指派的职务产生相应的子类对象 { case 1: ptnew=new Salesman(*empl); break; //基类指针指向子类对象 case 2: ptnew=new Technician(*empl); break; case 3: ptnew=new Manager(*empl); break; case 4: ptnew=new SalesManager(*empl); break; } delete empl; //释放原来的基类对象所用的内存 empl=ptnew; //使原来的基类指针指向新的子类对象 } for (int i=0; i《N; ++i) empl-》Print(); //显示指派职务之后的各子类对象的属性 system("pause"); return 0;}

c语言课程设计——职工信息管理系统

#include《stdio.h》#include《string.h》int main(){void TestOnLineTeacherManage(); //声明教师信息管理函数void TestOnLineSelfManage();//声明个人管理函数int n;printf(“0教师管理,1个人管理”);scanf(“%d”,&n);If (n==0)TestOnLineTeacherManage();elseTestOnLineSelfManage();//选择教师管理或者个人信息管理Return 0;}Void TestOnLineTeacherManage() //教师信息管理函数{Struct TestOnLineTeacher{Int Tnum;Char Tname;Char Tsex;Char Ttel;}Teacher; //定义一个结构体void add(); //定义教师信息添加void del(); //定义教师信息删除Void modify(); //定义教师信息修改int a;Printf(“1添加2删除3修改”); Scanf (“%d”,&a);Switch(a){Case1:add();break;Case2:del();break;Case3:modify();break;Default:break;}//选择功能}Void add() //教师信息添加函数,若添加Teacher{printf(“输入工号”);Scanf(“%d”,&Teacher.Tnum);printf(“输入姓名”);Scanf(“%s”,&Teacher.Tname);printf(“输入性别f女m男”);Scanf(“%c”,&Teacher.Tsex);printf(“输入电话”);Scanf(“%s”,&Teacher.Ttel);}Void del() //教师信息删除函数,若删除Teacher{Teacher;Free(Teacher);}Void modify() //教师信息修改函数,若修改Teacher{Int t;Int num;Char name;Char sex;Char tel;Printf(“修改选项1工号2姓名3性别4电话”);Scanf(“%d”,&t);Switch(t){Case1:scanf(“%d”,#);Teacher.Tnum=num;break;Case2:scanf(“%s”,&name);strcpy(Teacher.Tname,name);break;Case3:scanf(“%c”,&sex);Teacher.Tsex=sex;break;Case4:scanf(“%s”,&tel);strcpy(Teacher.Ttel,tel);break;Default:break;}//选择修改项并修改}Void TestOnLineSelfManage() //个人信息管理{Struct TestOnLineManage{Int Mnum;Char Mname;Char Msex;Char Mtel;}Manage; //定义一个结构体Int b;Int num;Char name;Char sex;Char tel;Printf(“修改选项1工号2姓名3性别4电话”);Scanf(“%d”,&b);Switch(t){Case1:scanf(“%d”,#);Manage.Mnum=num;break;Case2:scanf(“%s”,&name);strcpy(Manage.Mname,name);break;Case3:scanf(“%c”,&sex);Manage.Msex=sex;break;Case4:scanf(“%s”,&tel);strcpy(Manage.Mtel,tel);break;Default:break;}//选择修改项并修改}

HR怎样做员工信息管理更高效的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于HR怎样做员工信息管理更高效、HR怎样做员工信息管理更高效的信息别忘了在本站进行查找哦。

职工信息管理系统(HR怎样做员工信息管理更高效)

本文编辑:admin

更多文章:


g1223高铁(G1223的高铁1到8车厢在这等车,那么16车厢在哪等车啊)

g1223高铁(G1223的高铁1到8车厢在这等车,那么16车厢在哪等车啊)

本文目录G1223的高铁1到8车厢在这等车,那么16车厢在哪等车啊绍兴北站到浙江万里学院高铁怎么做天津到杭州高铁几点有沈阳之宁波G1223到宁波那个站2019年12月高铁g1223 途经站点济南西站到泰宁高铁天津到余杭高铁时刻G1223的高

2023年7月24日 03:20

诺基亚n82数码相机(诺基亚N82怎样照相,且照片在哪里)

诺基亚n82数码相机(诺基亚N82怎样照相,且照片在哪里)

本文目录诺基亚N82怎样照相,且照片在哪里诺基亚N82的拍照效果有普通数码相机好吗*诺基亚N82好还是N79好诺基亚N82的拍照功能相当于哪种数码相机的功能诺基亚N82的拍照效果有普通数码相机好吗诺基亚N82的相机是几倍变焦啊六百的数码相机

2023年11月23日 15:20

荣事达洗衣机说明书图片(荣事达全自动洗衣机使用教程)

荣事达洗衣机说明书图片(荣事达全自动洗衣机使用教程)

本文目录荣事达全自动洗衣机使用教程荣事达洗衣机怎么单独脱水荣事达全自动洗衣机使用教程连接电源,把排水管接入后,将衣服都放进洗衣机里,加入洗衣液,放在洗衣机里自带的盒子中。点击电源开关,开启电源,点bai击“程序”,将模式切换到“自编”。进入

2024年6月21日 03:08

七彩虹二手显卡报价(花1200买二手1070七彩虹显卡值得吗)

七彩虹二手显卡报价(花1200买二手1070七彩虹显卡值得吗)

“七彩虹二手显卡报价”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看七彩虹二手显卡报价(花1200买二手1070七彩虹显卡值得吗)!本文目录花1200买二手1070七彩虹显卡值得吗用了两年的七彩虹双风扇的1060二手显卡35

2024年6月9日 05:40

友华wr350刷机(友华通信路由器wr350电信送的那款)

友华wr350刷机(友华通信路由器wr350电信送的那款)

本文目录友华通信路由器wr350电信送的那款友华路由器wr350无线多启动友华通信wr350路由器好吗友华通信路由器wr350怎样设置中继友华路由器wr300js怎么恢复原厂自己的wrsky x9d刷机不成功,但是其他的wrsky x9d能

2023年8月30日 22:10

能写出你认为三国时代中战斗力最强的十位英雄吗?军队多种多样,一个国家的陆军战斗力是怎样评价出来的呢

能写出你认为三国时代中战斗力最强的十位英雄吗?军队多种多样,一个国家的陆军战斗力是怎样评价出来的呢

本文目录能写出你认为三国时代中战斗力最强的十位英雄吗军队多种多样,一个国家的陆军战斗力是怎样评价出来的呢哈士奇的战斗力怎么样野猪的战斗力到底有多强美国队长巅峰时期战力怎么样在漫威的电影中,蜘蛛侠的战斗力怎么样美军的最强精锐——三角洲部队,实

2024年5月13日 01:20

g31主板完美升级固态硬盘(关于老主板G31升级SSD固态硬盘的问题)

g31主板完美升级固态硬盘(关于老主板G31升级SSD固态硬盘的问题)

本文目录关于老主板G31升级SSD固态硬盘的问题主板是因特尔G31,想装个SSD固态硬盘主板只支持SATA 2接口,用了后效果会比机械硬盘快吗G31主板加上固态盘后电脑不启动G31的板子 支持 固态硬盘么G31主板可以上固态硬盘吗 现在是2

2024年6月17日 05:29

f码适合多大范围的人穿(f码适合多大范围的人穿)

f码适合多大范围的人穿(f码适合多大范围的人穿)

本文目录f码适合多大范围的人穿F尺寸的衣服瘦人可以穿吗f尺码适合多少斤女装F是什么码f码适合多大范围的人穿F码其实就是均码,是英文单词Free的首位字母。这个码数的衣服是大多数人都是可以穿的。F码相当于是M。只能说均码是相当于中码,但是不能

2023年10月28日 19:55

奔驰e级内饰(奔驰e级岑木内饰有色差)

奔驰e级内饰(奔驰e级岑木内饰有色差)

本文目录奔驰e级岑木内饰有色差老款e级奔驰内饰两种外观五种配置,新款奔驰E级上市,小改款吸引力如何奔驰E级内饰颜色几种2023款奔驰e级大改款奔驰e级座椅记忆怎么设置奔驰e级怎么样奔驰e级岑木内饰有色差买到假货。奔驰e级的独特岑木内饰由官方

2024年3月3日 20:00

两个不同牌子手机搬家(两个oppo手机如何搬家)

两个不同牌子手机搬家(两个oppo手机如何搬家)

本文目录两个oppo手机如何搬家不同品牌如何迁移数据,实现“一键换机”不同牌子手机怎么搬家两个oppo手机如何搬家手机搬家是OPPO公司提供的用于手机之间迁移数据的工具。使用手机搬家,可将旧手机上的资料(相册、联系人、应用等)快速搬至新手机

2023年6月16日 11:30

小米平衡车怎么样(平衡车哪个牌子的质量最好)

小米平衡车怎么样(平衡车哪个牌子的质量最好)

本文目录平衡车哪个牌子的质量最好平衡车的排名小米平衡车和华为平衡车哪个好凤凰平衡车与小米平衡车哪个好请问一下各位大神,小米九号plus平衡车怎么样小米和ninebot平衡车哪个好小米的平衡车好用么平衡车哪个牌子的质量最好平衡车小米Nineb

2023年8月12日 00:40

诺基亚2700c能下载主题吗(下了主题到手机里 为什么应用不了  我得手机是诺基亚2700c)

诺基亚2700c能下载主题吗(下了主题到手机里 为什么应用不了 我得手机是诺基亚2700c)

本文目录下了主题到手机里 为什么应用不了 我得手机是诺基亚2700c怎么把手机主题装到手机里我是诺基亚2700C的求诺基亚2700C的动漫手机主题谁能帮我制作下诺基亚2700c的主题!诺基亚2700c主题诺基亚2700C适合的软件有那些下

2024年5月19日 12:53

东芝事件是九轴机床(数控机床发展史)

东芝事件是九轴机床(数控机床发展史)

本文目录数控机床发展史东芝事件说明了什么东芝事件的事件简介五轴联动数控机床很先进吗1987年日本东芝偷卖精密机床给苏联,美国是怎么处罚东芝的数控特点与军事的联系中国制造业能超越日本吗目前世界上隐身性能最好的核潜艇是哪个型号数控机床发展史自美

2023年12月26日 00:05

联想ideapad全系列(联想ideapad包括哪几个系列啊)

联想ideapad全系列(联想ideapad包括哪几个系列啊)

本文目录联想ideapad包括哪几个系列啊联想ideapad 都有哪些型号• 联想IdeaPad品牌有哪几大系列产品联想ideapad包括哪几个系列啊看图。。各个系列有什么不同,上网,玩游戏,哪个系列好一点。还有,联想笔记本比,3000 其

2024年5月19日 10:06

华为手机批发商去哪里进货(开华为手机专卖店如何进货渠道都需要什么)

华为手机批发商去哪里进货(开华为手机专卖店如何进货渠道都需要什么)

本文目录开华为手机专卖店如何进货渠道都需要什么华为手机怎么进货想卖华为手机从哪进货想经销华为手机怎么进货华为手机如何进货开华为手机专卖店如何进货渠道都需要什么开华为手机专卖店如何。进货渠道。都需要什么?以本人从事手机行业来看,如果资本不多比

2024年1月1日 00:30

近期文章

dell poweredge r710(Dell poweredge r710 在这个界面卡死了,鼠标吧、键盘都不能动,应该怎么做)
2024-06-24 21:25:02
本站热文

电脑包尺寸对照表(电脑包要多大)
2024-06-24 04:45:46 浏览:3744
e10000(皖E10000是什么车)
2024-06-20 06:02:36 浏览:3496
ati radeon hd 5650(电脑的显卡是ATI Mobility Radeon HD 5650 (MADION PRO) ( 1 GB ) 这个显卡)
2024-06-20 04:46:07 浏览:3090
华为mate20pro版本区别(mate20pro有必要买ud版吗)
2024-06-22 05:35:31 浏览:2613
ipad买蜂窝版还是wifi版(ipad air 5买蜂窝好不好)
2024-06-20 02:40:32 浏览:2220
vivo y3配置参数(vivoy3参数是什么)
2024-06-18 16:04:33 浏览:2057
标签列表

热门搜索