职工信息管理系统(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

更多文章:


笔记本电脑屏幕尺寸大小(12.5寸的笔记本电脑,它显示屏的大小到底是多少厘米×多少厘米)

笔记本电脑屏幕尺寸大小(12.5寸的笔记本电脑,它显示屏的大小到底是多少厘米×多少厘米)

今天给各位分享12.5寸的笔记本电脑,它显示屏的大小到底是多少厘米×多少厘米的知识,其中也会对12.5寸的笔记本电脑,它显示屏的大小到底是多少厘米×多少厘米进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录12.

2024年10月19日 14:30

p图软件在线使用(求电脑p图软件)

p图软件在线使用(求电脑p图软件)

本文目录求电脑p图软件推荐几个电脑上用的P图软件求电脑p图软件电脑上用的P图软件有:光影魔术手、Adobe Photoshop、美图秀秀、CorelDRAW Graphics Suite、GIMP。光影魔术手是款针对图像画质进行改善提升及效

2024年5月6日 14:51

铁三角ar3bt停产了吗?铁三角ar3bt和ar3is有什么区别

铁三角ar3bt停产了吗?铁三角ar3bt和ar3is有什么区别

本文目录铁三角ar3bt停产了吗铁三角ar3bt和ar3is有什么区别铁三角ath-ar3bt蓝牙耳机,可以语音吗铁三角athws660bt和铁三角ar3bt那个音质好啊那个听低音更好啊铁三角ar3bt停产了吗没有。铁三角ATH-AR3BT

2023年10月30日 09:55

苹果手机什么牌子最好(苹果最好的手机是哪一款)

苹果手机什么牌子最好(苹果最好的手机是哪一款)

本篇文章给大家谈谈苹果手机什么牌子最好,以及苹果最好的手机是哪一款对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录苹果最好的手机是哪一款哪个

2024年9月2日 15:20

小米手机一直fastboot(小米手机出现fastboot开不了机怎么办)

小米手机一直fastboot(小米手机出现fastboot开不了机怎么办)

本文目录小米手机出现fastboot开不了机怎么办小米手机出现fastboot是什么意思 为什么小米手机上出现fastboot小米手机一直显示fastboot是什么问题小米手机开不了机显示fastboot小米手机出现fastboot开不了机

2023年6月25日 23:41

柯达z730(柯达Z730相机,最大可以使用多大的SD卡)

柯达z730(柯达Z730相机,最大可以使用多大的SD卡)

本篇文章给大家谈谈柯达z730,以及柯达Z730相机,最大可以使用多大的SD卡对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。本文目录柯达Z730相机,最大可以使用多大的SD卡在武汉买一款数码相机柯达Z730标配+金士顿512M的SD

2024年6月21日 18:05

oppo手机中文叫什么牌子(请问OPPO手机中文名)

oppo手机中文叫什么牌子(请问OPPO手机中文名)

本文目录请问OPPO手机中文名oppo手机中文叫什么牌子OPPO是什牌子的手机,它的中文名字又叫什么手机OPPO的中文名是什么呀OPPO中文名字叫什么oppo手机中文叫什么名字oppo手机中文名请问OPPO手机中文名OPPO手机的中文名是欧

2023年6月27日 17:30

苹果x手机怎么关机(iphonex咋关机)

苹果x手机怎么关机(iphonex咋关机)

本文目录iphonex咋关机苹果x强制关机怎么弄苹果x强制关机的方法iphone x 如何关机iphonex咋关机iPhone X应该如何关机,如何截屏以及一项操作呢工具/原料iPhone X关机iPhone X需要长按电源键的同时按住音量

2024年7月3日 15:05

中国移动最低套餐是多少钱(胶州移动公司办理套餐最低多少钱的)

中国移动最低套餐是多少钱(胶州移动公司办理套餐最低多少钱的)

“中国移动最低套餐是多少钱”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看中国移动最低套餐是多少钱(胶州移动公司办理套餐最低多少钱的)!本文目录胶州移动公司办理套餐最低多少钱的深圳全球通最低套餐是多少钱一个月成都移动什么套餐

2024年7月20日 01:45

联想y470开机报警连续的嘟嘟嘟(联想电脑主机开机报警,滴滴一直响)

联想y470开机报警连续的嘟嘟嘟(联想电脑主机开机报警,滴滴一直响)

本文目录联想电脑主机开机报警,滴滴一直响联想电脑开机时,“嘟嘟嘟嘟”一直响是什么原因联想笔记本开机后总是滴滴的响联想笔记本开机有警报,一直响嘟嘟声 持续到开机就没了联想y470一段时间没用了,一开机就一直嘟嘟嘟的响,进不去桌面联想y470开

2023年6月9日 12:20

春兰空调价格表(春兰空调怎么样)

春兰空调价格表(春兰空调怎么样)

大家好,今天小编来为大家解答以下的问题,关于春兰空调价格表,春兰空调怎么样这个很多人还不知道,现在让我们一起来看看吧!本文目录春兰空调怎么样春兰空调KFR-35GW/V1型号的压缩机多少钱一台请问买空调什么牌子好有哪几种型号怎么选购价格多少

2024年10月7日 11:55

arm9处理器(最近在关注ARM处理器,有讲ARM9也有讲A9的,这两者区别大吗)

arm9处理器(最近在关注ARM处理器,有讲ARM9也有讲A9的,这两者区别大吗)

本文目录最近在关注ARM处理器,有讲ARM9也有讲A9的,这两者区别大吗ARM9处理器如何设计SD卡电路ARM9是ARM Cortex-A9吗从21世纪初流行起来的arm9微处理器是多少位ARM9微处理器最近在关注ARM处理器,有讲ARM9

2024年1月9日 04:45

学摄影一般要多少钱(学习摄影要花多少钱呢)

学摄影一般要多少钱(学习摄影要花多少钱呢)

本文目录学习摄影要花多少钱呢学摄影花钱吗学习摄影贵么,大概多少钱呢自学有什么经验分享学习摄影要花多少钱呢首先你要觉得自己对摄影有兴趣 ,并有发现美好事物的眼光和思想角度 .然后在最初起可以评估自己的经济实力入手适合自己的摄影设备.一般四五千

2024年6月2日 21:12

天语手机京东自营官方旗舰店(临沂天语手机专卖店在哪)

天语手机京东自营官方旗舰店(临沂天语手机专卖店在哪)

本文目录临沂天语手机专卖店在哪天语手机京东旗舰店的电话号码京东商城的天语手机旗舰店卖的天语手机是原厂正品吗不是京东自营店,怕买到翻新旧手机买手机上京东自营买,还是官方旗舰买好为什么京东都有天语U90而天语官网上查不到这玩意临沂天语手机专卖店

2024年5月15日 15:53

thinkpad p50散热(ThinkPad P51 和旧款P50差距大吗)

thinkpad p50散热(ThinkPad P51 和旧款P50差距大吗)

本文目录ThinkPad P51 和旧款P50差距大吗用了4千多小时的think p50笔记本还值得要吗Thinkpad p50 噪声ThinkpadW541与Thinkpad P50区别有多大ThinkPad P51 和旧款P50差距大吗

2024年6月21日 10:53

八十大寿祝寿词简短(八十岁大寿祝寿贺词)

八十大寿祝寿词简短(八十岁大寿祝寿贺词)

“八十大寿祝寿词简短”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看八十大寿祝寿词简短(八十岁大寿祝寿贺词)!本文目录八十岁大寿祝寿贺词80简短经典的祝寿词有哪些80大寿祝寿词简短祝老人80岁大寿祝寿词简短(20条)晚辈对8

2024年8月4日 15:25

目前购买商品有几种途径呀?购买是什么意思

目前购买商品有几种途径呀?购买是什么意思

其实购买的问题并不复杂,但是又很多的朋友都不太了解目前购买商品有几种途径呀,因此呢,今天小编就来为大家分享购买的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录目前购买商品有几种途径呀购买是什么意思iPhonese

2024年10月10日 22:25

近期文章

cad2008(2008cad安装教程)
2024-11-22 18:50:03
本站热文

电脑包尺寸对照表(电脑包要多大)
2024-07-23 11:15:58 浏览:3911
e10000(皖E10000是什么车)
2024-07-17 11:22:25 浏览:3508
ati radeon hd 5650(电脑的显卡是ATI Mobility Radeon HD 5650 (MADION PRO) ( 1 GB ) 这个显卡)
2024-07-07 05:01:37 浏览:3103
华为mate20pro版本区别(mate20pro有必要买ud版吗)
2024-07-24 08:26:42 浏览:2631
ipad买蜂窝版还是wifi版(ipad air 5买蜂窝好不好)
2024-07-17 14:35:19 浏览:2241
标签列表

热门搜索