介绍:
邮政局职工工资查询系统
华数工资查询软件可根据不同单位不同工资类型开发经济适用的工资查询软件,目前我公司开发的工资查询软件,可以适用邮政局职工工资查询功能。河南华数服务热线:0373-3870581
无锡统力电工员工工资查询系统
登录查询系统查询。
1、姓名为您的中文名,如张山。
2、身份证号码系统默认为您工资本账号的尾数。
3、初始密码为您的工资本账号的后4位数,登录后也可自己修改密码。
4、每月工资变动如有疑问,请点击本系统右上角的“工资变动明细查询”按钮。
在网上怎么查工资情况
1 、打开 Internet Explorer →进入 学校主页 →登陆内网(用户名为工号,初始密码为身份证末六位,如有问题请咨询网络中心) 2 、进入内网后 →点击上方进入“财务信息”→选中上方“职工工资查询”→可分别按职工工资 / 工资汇总 / 实发工资进行查询 ① 在职工工资查询页面,选定工资类别和月份,即可查询到该月份工资情况,并可点击“导出”保存为 EXCEL 格式进行自助打印 ②工资汇总查询和实发工资查询操作同上类似,勾选工资类别和月份等信息(可多选)后点击“查询”,即可得到汇总数据和实际发放数据 3 、查询完毕点击右上方“退出系统”,关闭 Internet Explorer 注意事项: 1、目前校园网实行单点登录方式,工资查询只能通过登录陆内网才能查询到 2、工资数据原则上财务处一个月更新一次,本校教职工可在月底或者下月初登录自助打印本月的工资清单,今后将逐步由此替代每月来财务处领取工资单的做法,进一步保护个人隐私 3、工资查询中帐套选择( A 套或 B 套)与校内工资 ABC 无关系,仅为系统原先预设的,目前我校工资均为 A 套 4、为保证个人信息安全,系统设置为登录 5 分钟没操作将自动退出,此后需重新登录方可查询 5、工资系统开放查询的时间为每个工作日 8 : 15—16 : 15 6、如在具体操作中遇到问题,可咨询财务处,电话 67705059 。同时欢迎提出宝贵的意见和建议,以便我们对此不断完善
有好用的工资查询系统吗?
工资系统又不联网
只能在你单位查询
又不同于查询法律
工资是隐私查不到
职工工资管理系统
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
int shoudsave=0;
char dir[15];
struct member
{
char num[5];//编号
char name[15];
char sex[1];
float spercent;
float zpercent;
float xpercent;
float jiangjin;
float totle;
float ave;
}; //一个结构体
typedef struct node
{
struct member data;//指向结构体的结构体
struct node *next;
}Node,*Link;
void explain()
{printf("=============================关于此程序的操作说明==============================\n");
printf("===1:员工每旬应该完成量为33.3个百分点,输入只输数字部分。\n");
printf("===2:员工每月应该完成量完成量为100个百分点。\n");
printf("===3:员工奖金按其超额总应该完成量(即百分之百)的多少计算。\n");
printf("===4:奖金=(总完成比-1)*1000。\n");
printf("===5:员工底金为1000元。\n");
printf("===6:逻辑删除资料必须在已经保存了先前记录的基础上方可进行。\n");
printf("===7:进行逻辑删除资料后如果保存即变为物理删除。\n");
printf("===8:本程序在c++环境中完成,程序文件扩展名为.c。\n");
}
void menu() //菜单
{
printf("********************************************************************************");
printf("\t1获取说明信息\t\t\t\t\t 2输入员工资料\n");
printf("\t3删除员工资料\t\t\t\t\t 4查询员工资料\n");
printf("\t5修改员工资料\t\t\t\t\t 6显示员工资料\n");
printf("\t7统计员工业绩\t\t\t\t\t 8排序员工实发工资\n");
printf("\t9保存员工资料\t\t\t\t\t10逻辑删除员工资料\n");
printf("\t0退出系统\n");
printf("********************************************************************************\n");
}
void printc() // 本函数用于输出中文
{
printf("编号 姓名 性别 总完成比 旬平均 基本工资 奖金 工资总额 \n");
}
void printe(Node *p)//本函数用于输出英文
{
printf("%-5s%-10s%-4s%6.1f %6.1f %6.1f %6.1f %6.1f\n",p-data.num,p-data.name,p-data.sex,p-data.totle,p-data.ave,1000.0,p-data.jiangjin,1000+p-data.jiangjin);
}
void printstart()
{
printf("-----------------------------------------------------------------------\n");
}
void Wrong() //如果错误
{
printf("\n=====提示:输入错误!\n");
}
void Nofind() //如果没找到
{
printf("\n=====提示:没有找到该员工!\n");
}
Node* Locate(Link l,char findmess[],char nameornum[]) //该函数用于定位连表中符合要求的接点,并返回该指针
{
Node *r;
if(strcmp(nameornum,"num")==0) //按编号查询
{
r=l-next;
while(r!=NULL)
{
if(strcmp(r-data.num,findmess)==0)
return r;
r=r-next;
}
}
else if(strcmp(nameornum,"name")==0) //按姓名查询
{
r=l-next;
while(r!=NULL)
{
if(strcmp(r-data.name,findmess)==0)
return r;
r=r-next;
}
}
return 0;
}
void Add(Link l) //增加员工
{
Node *p,*r,*s;
char num[10];
r=l;
s=l-next;
while(r-next!=NULL)
r=r-next; //将指针置于最末尾
//while(1)
{
printf("请你输入编号(以'0'返回上一级菜单:)");
fflush(stdin);
gets(num);
if(strcmp(num,"0")==0)return;//比较判断是否返回
//break;
}
while(s)
{
if(strcmp(s-data.num,num)==0) //比较判断是否重复
{
printf("=====提示:编号为'%s'的员工已经存在,若要修改请你选择'4 修改'!\n",num);
printstart();
printc();
printe(s);
printstart();
printf("\n");
return;
}
s=s-next;
}
p=(Node *)malloc(sizeof(Node)); //开辟一个指定大小的存储空间
strcpy(p-data.num,num);
printf("请您输入姓名:");
scanf("%s",p-data.name);
getchar();
printf("请您输入性别(m/f):");
scanf("%s",p-data.sex);
getchar();
printf("请您输入上旬完成(百分比):");
scanf("%f",p-data.spercent);
getchar();
printf("请您输入中旬完成(百分比):");
scanf("%f",p-data.zpercent);
getchar();
printf("请您输入下旬完成(百分比):");
scanf("%f",p-data.xpercent);
getchar();
p-data.totle=p-data.spercent+p-data.zpercent+p-data.xpercent;
p-data.ave=p-data.totle / 3;
if(p-data.totle100)
{p-data.jiangjin=(p-data.totle-100)*10;}
else p-data.jiangjin=(p-data.totle-100)*10;
//信息输入已经完成
p-next=NULL;
r-next=p;
r=p;
shoudsave=1;
}
void Search(Link l) //查询员工
{
int sel;
char findmess[20];
Node *p;
if(!l-next)
{
printf("\n=====提示:没有资料可以查询!\n");
return;
}
printf("\n=====1按编号查找\n======2按姓名查找\n======3返回上一级菜单\n");
scanf("%d",sel);
if(sel==3)
{return;}
if(sel==1)//编号
{
printf("请您输入要查找的编号:");
scanf("%s",findmess);
p=Locate(l,findmess,"num"); //定位链表中符合要求的节点
if(p)
{
printf("\t\t\t查找结果(完成单位:个百分比)\n");
printstart();
printc();
printe(p);
printstart();
}
else
Nofind();
}
else
if(sel==2) //姓名
{
printf("请您输入要查找的姓名:");
scanf("%s",findmess);
p=Locate(l,findmess,"name"); //定位链表中符合要求的节点
if(p)
{
printf("\t\t\t\t查找结果\n");
printstart();
printc();
printe(p);
printstart();
}
else
Nofind();
}
else
Wrong();
}
void Del(Link l) //物理删除
{
int sel;
Node *p,*r;
char findmess[20];
if(!l-next)
{
printf("\n=====提示:没有资料可以删除!\n");
return;
}
printf("\n=====1按编号删除\n=====2按姓名删除\n======3返回上一级菜单\n");
scanf("%d",sel);
if(sel==3)
{return;}
if(sel==1)
{
printf("请你输入要删除的编号:");
scanf("%s",findmess);
p=Locate(l,findmess,"num"); //定位链表中符合要求的节点
if(p)
{
r=l;
while(r-next!=p)
r=r-next;
r-next=p-next;
free(p);
printf("\n=====提示:该员工已经成功删除!\n");
shoudsave=1;
}
else
Nofind();
}
else if(sel==2)
{
printf("请你输入要删除的姓名:");
scanf("%s",findmess);
p=Locate(l,findmess,"name");//定位链表中符合要求的节点
if(p)
{
r=l;
while(r-next!=p)
r=r-next;
r-next=p-next;
free(p);
printf("\n=====提示:该员工已经成功删除!\n");
shoudsave=1;
}
else
Nofind();
}
else
Wrong();
}
void Ndel(Link l) //逻辑删除
{
int sel;
Node *p,*r;
char findmess[20];
if(shoudsave==1)
{printf("\n=====提示:请您先保存已输入的记录,再进行逻辑删除。要物理删除请按3。\n");
return;
}
if(!l-next)
{
printf("\n=====提示:没有资料可以删除!\n");
return;
}
printf("\n=====1按编号删除\n=====2按姓名删除\n======3返回上一级菜单\n");
scanf("%d",sel);
if(sel==3)
{return;}
if(sel==1)
{
printf("请你输入要删除的编号:");
scanf("%s",findmess);
p=Locate(l,findmess,"num");//定位链表中符合要求的节点
if(p)
{
r=l;
while(r-next!=p)
r=r-next;
r-next=p-next;
free(p);
printf("\n=====提示:该员工已经成功删除!\n");
shoudsave=0;
}
else
Nofind();
}
else if(sel==2)
{
printf("请你输入要删除的姓名:");
scanf("%s",findmess);
p=Locate(l,findmess,"name"); //定位链表中符合要求的节点
if(p)
{
r=l;
while(r-next!=p)
r=r-next;
r-next=p-next;
free(p);
printf("\n=====提示:该员工已经成功删除!\n");
shoudsave=0;
}
else
Nofind();
}
else
Wrong();
}
void Modify(Link l) //修改员工资料
{ int choose;
Node *p;
char findmess[20];
if(!l-next)
{
printf("\n=====提示:没有资料可以修改!\n");
return;
}
printf("请你输入要修改的员工编号(以0返回上一级菜单):");
scanf("%s",findmess);
if(strcmp(findmess,"0")==0) return;
p=Locate(l,findmess,"num"); //定位链表中符合要求的节点
if(p)
{printf("=========1:修改员工编号;\n");
printf("=========2:修改员工姓名;\n");
printf("=========3:修改员工性别;\n");
printf("=========4:修改员工上旬完成百分比;\n");
printf("=========5:修改员工中旬完成百分比;\n");
printf("=========6:修改员工下旬完成百分比;\n");
printf("\n-------请你输入要修改的员工条目:");
scanf("%d",choose);
switch(choose)
{ case 1: printf("请你输入新编号(原来是%s):",p-data.num);
scanf("%s",p-data.num); break;
case 2: printf("请你输入新姓名(原来是%s):",p-data.name);
scanf("%s",p-data.name);
getchar(); break;
case 3: printf("请你输入新性别(原来是%s):",p-data.sex);
scanf("%s",p-data.sex); break;
case 4: printf("请你输入新的上旬完成百分比(原来是%5.2f ):",p-data.spercent);
scanf("%f",p-data.spercent);
getchar();
p-data.totle=p-data.spercent+p-data.zpercent+p-data.xpercent;
p-data.ave=p-data.totle / 3;
if(p-data.totle100)
{p-data.jiangjin=(p-data.totle-100)*10;}
else p-data.jiangjin=(p-data.totle-100)*10;
break;
case 5: printf("请你输入新的中旬完成百分比(原来是%5.2f ):",p-data.zpercent);
scanf("%f",p-data.zpercent);
getchar();
p-data.totle=p-data.spercent+p-data.zpercent+p-data.xpercent;
p-data.ave=p-data.totle / 3;
if(p-data.totle100)
{p-data.jiangjin=(p-data.totle-100)*10;}
else p-data.jiangjin=(p-data.totle-100)*10;
break;
case 6: printf("请你输入新的下旬完成百分比(原来是%5.2f ):",p-data.xpercent);
p-data.totle=p-data.spercent+p-data.zpercent+p-data.xpercent;
p-data.ave=p-data.totle / 3;
if(p-data.totle100)
{p-data.jiangjin=(p-data.totle-100)*10;}
else p-data.jiangjin=(p-data.totle-100)*10;
break;
default: Wrong();return;
}
printf("\n=====提示:资料修改成功!\n");
shoudsave=1;
}
else
Nofind();
}
void Disp(Link l) //显示员工资料
{
int count=0;
Node *p;
p=l-next;
if(!p)
{
printf("\n=====提示:没有资料可以显示!\n");
return;
}
printf("\t\t\t显示结果(完成单位:个百分比)\n");
printstart();
printc();
printf("\n");
while(p)
{
printe(p);
p=p-next;
}
printstart();
printf("\n");
}
void Tongji(Link l) //统计员工资料
{
Node *pz,*px,*ps,*pt,*pa,*pj; //用于指向分数最高的接点
Node *r=l-next;
if(!r)
{
printf("\n=====提示:没有资料可以统计!\n");
return ;
}
ps=pz=px=pt=pa=pj=r;
while(r!=NULL)
{
if(r-data.spercent=ps-data.spercent)
ps=r;
if(r-data.zpercent=pz-data.zpercent)
pz=r;
if(r-data.xpercent=px-data.xpercent)
px=r;
if(r-data.totle=pt-data.totle)
pt=r;
if(r-data.ave=pa-data.ave)
pa=r;
if(r-data.jiangjin=pa-data.jiangjin)
pj=r;
r=r-next;
}
printf("-----------------统计结果--------------------------\n");
printf("月总完成最高者:\t%s %5.2f个百分比\n",pt-data.name,pt-data.totle);
printf("平均完成最高者:\t%s %5.2f个百分比\n",pa-data.name,pa-data.ave);
printf("上旬完成最高者:\t%s %5.2f个百分比\n",ps-data.name,ps-data.spercent);
printf("中旬完成最高者:\t%s %5.2f个百分比\n",pz-data.name,pz-data.zpercent);
printf("下旬完成最高者:\t%s %5.2f个百分比\n",px-data.name,px-data.xpercent);
printf(" 奖金最高者:\t%s %5.2f元\n",pj-data.name,pj-data.jiangjin);
printstart();
}
void Sort(Link l)//按员工实发工资(即其完成额大小)排序
{int m;
Link ll;
Node *p,*rr,*s;
ll=(Link)malloc(sizeof(Node)); //用于做新的链表
ll-next=NULL;
if(l-next==NULL)
{
printf("\n=====提示:没有资料可以排序!\n");
return ;
}
p=l-next;
while(p)
{
s=(Node*)malloc(sizeof(Node)); //新建接点用于保存信息
s-data=p-data;
s-next=NULL;
rr=ll;
while(rr-next!=NULL rr-next-data.totle=p-data.totle)
rr=rr-next;
if(rr-next==NULL)
rr-next=s;
else
{
s-next=rr-next;
rr-next=s;
}
p=p-next;
}
free(l);
l-next=ll-next;
printf("\n=====提示:排序已经完成!\n");
for(m=1;rr-next!=NULL;m++)
{rr=rr-next;
printf("\n第%d名",m); printf("\n编号:%s",rr-data.num);printf(" 姓名:%s",rr-data.name); printf(" 性别:%s",rr-data.sex); printf(" 工资总额:%5.2f+1000\n",rr-data.ave);
}
}
void Save(Link l) //保存已经输入的员工资料
{
FILE* fp;
Node *p;
int flag=1,count=0;
fp=fopen(dir,"wb");
if(fp==NULL)
{
printf("\n=====提示:重新打开文件时发生错误!\n");
exit(1);
}
p=l-next;
while(p)
{
if(fwrite(p,sizeof(Node),1,fp)==1)
{
p=p-next;
count++;
}
else
{
flag=0;
break;
}
}
if(flag)
{
printf("\n=====提示:文件保存成功.(有%d条记录已经保存.)\n",count);
shoudsave=0;
}
fclose(fp);
}
void main() //主函数Main
{
Link l;//连表
FILE *fp; //文件指针
int sel;
char ch;
char jian;
int count=0;
//char mima[10];
Node *p,*r;
printf("\t\t\t员工工资管理系统\n\t\t\t\t------电子1班\n\t\t\t\t\t孙大光\n");
l=(Node*)malloc(sizeof(Node));
l-next=NULL;
r=l;
fp=fopen("C:\\member1","rb");//打开文件夹
if(fp==NULL)
{
printf("\n=====提示:文件还不存在,是否创建?(y/n)\n");
scanf("%c",jian);
if(jian=='y'||jian=='Y')
{printf("输入路径:");
scanf("%s",dir);
fp=fopen(dir,"wb");}
else exit(0);
if(fp)
{printf("\n=====提示:文件已经打开,正在导入记录......\n");
printf("\n=====提示:记录导入完毕,共导入%d条记录.\n",0); }
}
else
{while(!feof(fp))
{
p=(Node*)malloc(sizeof(Node)); //开辟一个指定大小的存储空间
if(fread(p,sizeof(Node),1,fp)) //将文件的内容放入接点中
{
p-next=NULL;
r-next=p;
r=p; //将该接点挂入连中
count++;
}
}
fclose(fp); //关闭文件
printf("\n=====提示:记录导入完毕,共导入%d条记录.\n",count);
}
while(1)
{
menu();
printf("请你选择操作:");
scanf("%d",sel);
if(sel==0)
{
if(shoudsave==1)
{ getchar();
printf("\n=====提示:资料已经改动,是否将改动保存到文件中(y/n)?\n");
scanf("%c",ch);
if(ch=='y'||ch=='Y')
Save(l);
}
printf("\n===== 您已经退出系统,谢谢您的使用,再见!\n");
break;
}
switch(sel)
{
case 1:explain();break; //操作说明
case 2:Add(l);break; //增加员工资料
case 3:Del(l);break;//删除员工资料
case 4:Search(l);break;//查询员工资料
case 5:Modify(l);break;//修改员工资料
case 6:Disp(l);break;//显示员工资料
case 7:Tongji(l);break;//统计员工资料
case 8:Sort(l);break;//排序员工资料
case 9:Save(l);break;//保存员工资料
case 10:Ndel(l);break;//逻辑删除员工资料
default: Wrong();getchar();break;
}
}
}
求职工工资信息管理系统。谢谢
职工基本信息:如工资卡号、身份证号、姓名、性别、年龄、工龄、部门、技术/*这是我开始做课程设计时写的*/ #include "stdio.h" /*标准输入输出
网友评论
最新评论
e=p-data.totle / 3; if(p-data.totle100) {p-data.jiangjin=(p-data.totle-100)*10;} else p-data.jiangjin=(p-data.totle-100)*10; break; case 6: p
xt; while(p) { if(fwrite(p,sizeof(Node),1,fp)==1) { p=p-next; count++; } else { flag=0; break; } } if(flag) {
比;\n"); printf("\n-------请你输入要修改的员工条目:"); scanf("%d",choose); switch(choose) { case
cent+p-data.zpercent+p-data.xpercent; p-data.ave=p-data.totle / 3; if(p-data.totle100) {p-data