当前位置:首页 » 编程语言 » c语言职工工作量统计系统
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言职工工作量统计系统

发布时间: 2022-01-12 10:10:15

① 请用c语言编写一个:职工工作量统计系统

#include <stdio.h>
#include <string.h>
#include <header.h>

/*
编写一个程序,该程序输入职工工号和完成的产品数量,
程序允许同一职工有多次输入,由程序对其完成的产品数量实现累计。
程序按完成数量对他们排序,并确定他们的名次。按完成产品数量由多到少的顺序,
输出名次、同一名次的职工人数及他们的工号(工号由小到大顺序输出)。

信息:职工编号(nEmployId,nProctNumber)
要求:1.允计同一人多次输入,对产品实行累计
*/
const int nPerson = 10;//车间工人数
char *arr_personId[] = {"001", "002", "003", "004", "005", "006", "007", "008", "009", "010"};
int arr_proNumber[nPerson] = {0};
/*
某个员工的产品数量
*/
void PersonOne(int index)
{
int nProCount, nClear;
scanf("%d", &nProCount);
while(nProCount < 0)
{
printf("您输入的计件数量不符合标准,请输入数字:\n");
while((nClear = getchar()) != '\n' && nClear != EOF);
scanf("%d", &nProCount);
}
arr_proNumber[index] += nProCount;
}
/*
所有员工计量统计
*/
void AllPersonPro()
{
int i =0;
while(i < nPerson)
{
char nPerId[nPerson];
memset(nPerId, '\0', nPerson);
printf("请输入您的编号及完成的产品数量:\n");
scanf("%s", nPerId);
int j = 0, index = 0, flag = 0;
for(j = 0;j < nPerson;++j)
{
if(!strcmp(nPerId, arr_personId[j]))
{
index = j;
++flag;
}
}
j = 0;
while(flag == 0)
{
printf("对不起,您输入的编号不正确,请确认后重新输入:\n");
scanf("%s", nPerId);
while(j < nPerson)
{
if(!strcmp(nPerId, arr_personId[j]))
{
index = j;
++flag;
break;
}
++j;
}

}
if(arr_proNumber[index] == 0)
{
++i;
}
PersonOne(index);
}
}
struct Employ
{
char cEmpNum[nPerson];
int nNumber;
};
/*
员工计件排名
*/
void sort()
{
AllPersonPro();
struct Employ p[nPerson];
int i = 0;
for(i = 0;i < nPerson;++i)
{
strcpy(p[i].cEmpNum, arr_personId[i]);
p[i].nNumber = arr_proNumber[i];
}
//对员工作进行排名
for(i = 0;i < nPerson;++i)
{
for(int j = i; j > 0;--j)
{
//根据计件数排名
if(p[j].nNumber > p[j-1].nNumber)
{
struct Employ temp = p[j];
p[j] = p[j-1];
p[j-1] = temp;
}
//如果计件数相同,根据工号排名
if(p[j].nNumber == p[j-1].nNumber)
{
if(strcmp(p[j].cEmpNum, p[j-1].cEmpNum) < 0)
{
struct Employ temp = p[j-1];
p[j-1] = p[j];
p[j] = temp;
}
}
}
}
for(i = 0;i < nPerson;++i)
{
printf("编号:%s 计件数:%d\n", p[i].cEmpNum, p[i].nNumber);
}

}

② 职工工作量统计系统(用C语言编程)

有啥重谢,,这个要花不少时间的

③ C程序编程题目--职工工作量统计系统

顺便说一下,这不叫做"问题",是投机.
如果是作业,谁帮你就是害你
如果是商品,谁帮你就是傻瓜
如果是掩盖刷分,写正确答案的会很倒楣.
如果是问题,它应该是一个难点,总不可能你连开头都不会写吧,困在那儿了你写出来别人也好帮你,就是开头不会写你也可以说明具体差在哪儿,可你把题目这么一推还要"详细",简直不拿好心人当人.

④ 职工工作量统计系统 用C语言编程

可以替你编,加860182826

⑤ c语言程序设计 职工工作量统计系统设计

发消息给你了

⑥ :职工工作量统计系统设计.用c语言编程

#include<iostream.h>
#include<string.h>
#include<fstream.h>
class stu
{
char name[20];
double much,sum;
public:
stu()
{
}
stu(char n[20],double muc)
{
strcpy(name,n);
much=muc;
}
double getsum()
{
sum=much;
return sum;
}
friend void main();
};

void main()
{
cout<<"请选择您需要的操作!"<<endl;
cout<<"操作:"<<endl;
cout<<"(0)职工数据录入"<<endl;
cout<<"(1)增加职工人员"<<endl;
cout<<"(2)删除职工人员"<<endl;
cout<<"(3)新完成的需要添加的产品数量数据"<<endl;
cout<<"查询:"<<endl;
cout<<"(4)按总产品数量查询"<<endl;
cout<<"(5)按职工姓名查询"<<endl;
cout<<"(6)输出所有职工的数据"<<endl;
cout<<"生产量排名名次"<<endl;
cout<<"(7)按职工生产的总产品数量查询排名"<<endl;
cout<<"选择相关操作请输入相对的括号里的阿拉伯数字!"<<endl;
char p;char w;
stu *s[50];
ofstream *file[50];
int i=0;
int j=0;
bool flag2=0;
do
{
cin>>p;
if((p>='0'&&p<='10'))
flag2=1;
else
cout<<"指令错误!请重新输入:"<<endl;
}while(flag2==0);
do{
switch(p)
{
case '0':
{
char c;
char name[20];double much;
do{
cout<<"请输入职工姓名"<<endl;
cin>>name;
cout<<"请输入产品数量:"<<endl;
cin>>much;
file[j]=new ofstream("d:\\document",ios::ate);
*file[j]<<"姓名"<<name<<"产品数量"<<much<<endl;
j++;
s[i]=new stu(name, much);
i++;
cout<<"数据录入成功,想继续录入吗(y/n)"<<endl;
cin>>c;
flag2=0;
do
{
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
else
flag2=1;
}while(flag2==0);
}while(c=='y');
break;
}
case '1':
{
char name[20];double much;
char c;
do
{
cout<<"请输入您要增加的职工的姓名:"<<endl;
cin>>name;
cout<<"请输入产品数量"<<endl;
cin>>much;
file[j]=new ofstream("d:\\document",ios::ate);
*file[j]<<"姓名"<<name<<"产品数量"<<much<<endl;
j++;
s[i]=new stu(name, much);
i++;
cout<<"数据录入成功,想继续录入吗(y/n)"<<endl;
cin>>c;
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
}while(c=='y');
break;
}
case '2':
{
char name[20];bool flag3=0;char c;
do{
cout<<"请输入您要删除的职工姓名:"<<endl;
cin>>name;
for(int h=0;h<i;h++)
{
if(strcmp(name,s[h]->name)==0)
{
flag3=1;
i--;
do{
s[h]=s[h+1];
h++;
}while(h<=i);
}
}
if(flag3==0)
cout<<"您要求删除的对象本来就不存在!请检查输入的正确性!";
cout<<"要继续删除吗?(y/n)"<<endl;
cin>>c;
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
}while(c=='y');
break;
}
case '3':
{
char name[20];double mat;flag2=0;
char c;
do
{
cout<<"请输入您要修改的职工的姓名:"<<endl;
cin>>name;
for(int h=0;h<i;h++)
{
if(strcmp(name,s[h]->name)==0)
{
flag2=1;
cout<<"请输入新完成的产品数量:"<<endl;
cin>>mat;
s[h]->much+=mat;
cout<<"数据添加成功!";
}
}
if(flag2==0)
{
cout<<"您要修改的职工本来就不存在!请检查重新输入!"<<endl;
}
cout<<"想继续修改吗(y/n)"<<endl;
cin>>c;
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
}while(c=='y');
break;
}

case '4':
{
double t;char c;
do
{
int flag1=0;
cout<<"请输入你要查询职工的总产品数量"<<endl;
cin>>t;
for(int q=0;q<i;q++)
{
if(s[q]->getsum()==t)
{
flag1=1;
cout<<"您要查询的职工是:"<<(*s[q]).name<<endl;
}
}
if(flag1==0)
cout<<"对不起!您要查询的职工不存在!"<<endl;
cout<<"您想继续查询吗?(y/n)"<<endl;
cin>>c;
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
}
while(c=='y');
break;
}

case '5':
{
char n[20];int j=0;char c;
do{
int flag=0;
cout<<"请输入你要查询的职工姓名"<<endl;
cin>>n;
for(int j=0;j<i;j++)
{
if(strcmp(n,(*s[j]).name)==0)
{
flag=1;
cout<<"您要查询的职工是:"<<(*s[j]).name<<endl;
cout<<(*s[j]).name<<"的总产品数量是"<<(*s[j]).getsum()<<endl;
}
}
if(flag==0)
cout<<"对不起!您要查询的职工不存在!"<<endl;
cout<<"您想继续查询吗?(y/n)"<<endl;
cin>>c;
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
}
while(c=='y');
break;
}

case '6':
{
cout<<"本系统所有职工数据如下:"<<endl;
if(i==0)
cout<<"管理系统中没有录入数据或者数据已经被删除!"<<endl;
for(int k=0;k<i;k++)
{
cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name<<"总产品数量:"<<" "<<(*s[k]).getsum() <<endl;
}
break;
}
case '7':
{
int t;stu b;

cout<<"本系统所有职工排名如下:"<<endl;
for(int x=0;x<i-1;x++)
{
t=x;
for(int y=x+1;y<i;y++)
{
if((s[t]->getsum())<(s[y]->getsum()))
t=y;
if(t!=x)
{
b=*s[x];
*s[x]=*s[t];
*s[t]=b;
}
}
}
if(i==0)
cout<<"管理系统中没有录入数据或者数据已经被删除!";
for(int k=0;k<i;k++)
{
cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name
<<"总产品数量:"<<" "<<s[k]->getsum() <<endl;
}
break;
}

case '9':
{
int t;stu b;

cout<<"本系统所以职工总产品数量排名如下:"<<endl;
for(int x=0;x<i-1;x++)
{
t=x;
for(int y=x+1;y<i;y++)
{
if((s[t]->much)<(s[y]->much))
t=y;
if(t!=x)
{
b=*s[t];
*s[t]=*s[x];
*s[x]=b;
}
}
}

if(i==0)
cout<<"管理系统中没有录入数据或者数据已经被删除!";
for(int k=0;k<i;k++)
{
cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name
<<"产品数量:"<<" "<<s[k]->getsum() <<endl;
}
break;
}
}

cout<<"您想继续进行其他操作吗?(y/n)"<<endl;
bool flag4=0;
do
{
cin>>w;
if(w!='y'&&w!='n')
cout<<"指令错误!请重新输入!"<<endl;
else
flag4=1;
}while(flag4==0);
if(w=='y')
cout<<"请输入操作代码:(0)职工数据录入;(1)增加职工人员; (2)删除职工人员; (3)新完成需要添加的产品数量数据; (4)按总产品数量查询; (5)按职工姓名查询; (6)输出所有职工的数据; (7)按职工生产的总产品数量查询排名"<<endl;
cin>>p;
}while(w=='y');
for(int x=0;x<i;x++)
{
delete s[x];
cout<<"删除所有数据成员"<<endl;
}

}

⑦ 急求才C语言程序 职工工作量统计系统设计

小心楼上骗子

⑧ 职工工作量统计系统 用c语言编写

#include<iostream.h> #include<string.h> #include<fstream.h> class stu { char name[20]; double much,sum; public: stu() { } stu(char n[20],double muc) { strcpy(name,n); much=muc; } double getsum() { sum=much; return sum; } friend void main(); }; void main() { cout<<"请选择您需要的操作!"<<endl; cout<<"操作:"<<endl; cout<<"(0)职工数据录入"<<endl; cout<<"(1)增加职工人员"<<endl; cout<<"(2)删除职工人员"<<endl; cout<<"(3)新完成的需要添加的产品数量数据"<<endl; cout<<"查询:"<<endl; cout<<"(4)按总产品数量查询"<<endl; cout<<"(5)按职工姓名查询"<<endl; cout<<"(6)输出所有职工的数据"<<endl; cout<<"生产量排名名次"<<endl; cout<<"(7)按职工生产的总产品数量查询排名"<<endl; cout<<"选择相关操作请输入相对的括号里的阿拉伯数字!"<<endl; char p;char w; stu *s[50]; ofstream *file[50]; int i=0; int j=0; bool flag2=0; do { cin>>p; if((p>='0'&&p<='10')) flag2=1; else cout<<"指令错误!请重新输入:"<<endl; }while(flag2==0); do{ switch(p) { case '0': { char c; char name[20];double much; do{ cout<<"请输入职工姓名"<<endl; cin>>name; cout<<"请输入产品数量:"<<endl; cin>>much; file[j]=new ofstream("d:\\document",ios::ate); *file[j]<<"姓名"<<name<<"产品数量"<<much<<endl; j++; s[i]=new stu(name, much); i++; cout<<"数据录入成功,想继续录入吗(y/n)"<<endl; cin>>c; flag2=0; do { if(c!='y'&&c!='n') { cout<<"指令错误!请重新输入!"<<endl; cin>>c; } else flag2=1; }while(flag2==0); }while(c=='y'); break; } case '1': { char name[20];double much; char c; do { cout<<"请输入您要增加的职工的姓名:"<<endl; cin>>name; cout<<"请输入产品数量"<<endl; cin>>much; file[j]=new ofstream("d:\\document",ios::ate); *file[j]<<"姓名"<<name<<"产品数量"<<much<<endl; j++; s[i]=new stu(name, much); i++; cout<<"数据录入成功,想继续录入吗(y/n)"<<endl; cin>>c; if(c!='y'&&c!='n') { cout<<"指令错误!请重新输入!"<<endl; cin>>c; } }while(c=='y'); break; } case '2': { char name[20];bool flag3=0;char c; do{ cout<<"请输入您要删除的职工姓名:"<<endl; cin>>name; for(int h=0;h<i;h++) { if(strcmp(name,s[h]->name)==0) { flag3=1; i--; do{ s[h]=s[h+1]; h++; }while(h<=i); } } if(flag3==0) cout<<"您要求删除的对象本来就不存在!请检查输入的正确性!"; cout<<"要继续删除吗?(y/n)"<<endl; cin>>c; if(c!='y'&&c!='n') { cout<<"指令错误!请重新输入!"<<endl; cin>>c; } }while(c=='y'); break; } case '3': { char name[20];double mat;flag2=0; char c; do { cout<<"请输入您要修改的职工的姓名:"<<endl; cin>>name; for(int h=0;h<i;h++) { if(strcmp(name,s[h]->name)==0) { flag2=1; cout<<"请输入新完成的产品数量:"<<endl; cin>>mat; s[h]->much+=mat; cout<<"数据添加成功!"; } } if(flag2==0) { cout<<"您要修改的职工本来就不存在!请检查重新输入!"<<endl; } cout<<"想继续修改吗(y/n)"<<endl; cin>>c; if(c!='y'&&c!='n') { cout<<"指令错误!请重新输入!"<<endl; cin>>c; } }while(c=='y'); break; } case '4': { double t;char c; do { int flag1=0; cout<<"请输入你要查询职工的总产品数量"<<endl; cin>>t; for(int q=0;q<i;q++) { if(s[q]->getsum()==t) { flag1=1; cout<<"您要查询的职工是:"<<(*s[q]).name<<endl; } } if(flag1==0) cout<<"对不起!您要查询的职工不存在!"<<endl; cout<<"您想继续查询吗?(y/n)"<<endl; cin>>c; if(c!='y'&&c!='n') { cout<<"指令错误!请重新输入!"<<endl; cin>>c; } } while(c=='y'); break; } case '5': { char n[20];int j=0;char c; do{ int flag=0; cout<<"请输入你要查询的职工姓名"<<endl; cin>>n; for(int j=0;j<i;j++) { if(strcmp(n,(*s[j]).name)==0) { flag=1; cout<<"您要查询的职工是:"<<(*s[j]).name<<endl; cout<<(*s[j]).name<<"的总产品数量是"<<(*s[j]).getsum()<<endl; } } if(flag==0) cout<<"对不起!您要查询的职工不存在!"<<endl; cout<<"您想继续查询吗?(y/n)"<<endl; cin>>c; if(c!='y'&&c!='n') { cout<<"指令错误!请重新输入!"<<endl; cin>>c; } } while(c=='y'); break; } case '6': { cout<<"本系统所有职工数据如下:"<<endl; if(i==0) cout<<"管理系统中没有录入数据或者数据已经被删除!"<<endl; for(int k=0;k<i;k++) { cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name<<"总产品数量:"<<" "<<(*s[k]).getsum() <<endl; } break; } case '7': { int t;stu b; cout<<"本系统所有职工排名如下:"<<endl; for(int x=0;x<i-1;x++) { t=x; for(int y=x+1;y<i;y++) { if((s[t]->getsum())<(s[y]->getsum())) t=y; if(t!=x) { b=*s[x]; *s[x]=*s[t]; *s[t]=b; } } } if(i==0) cout<<"管理系统中没有录入数据或者数据已经被删除!"; for(int k=0;k<i;k++) { cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name <<"总产品数量:"<<" "<<s[k]->getsum() <<endl; } break; } case '9': { int t;stu b; cout<<"本系统所以职工总产品数量排名如下:"<<endl; for(int x=0;x<i-1;x++) { t=x; for(int y=x+1;y<i;y++) { if((s[t]->much)<(s[y]->much)) t=y; if(t!=x) { b=*s[t]; *s[t]=*s[x]; *s[x]=b; } } } if(i==0) cout<<"管理系统中没有录入数据或者数据已经被删除!"; for(int k=0;k<i;k++) { cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name <<"产品数量:"<<" "<<s[k]->getsum() <<endl; } break; } } cout<<"您想继续进行其他操作吗?(y/n)"<<endl; bool flag4=0; do { cin>>w; if(w!='y'&&w!='n') cout<<"指令错误!请重新输入!"<<endl; else flag4=1; }while(flag4==0); if(w=='y') cout<<"请输入操作代码:(0)职工数据录入;(1)增加职工人员; (2)删除职工人员; (3)新完成需要添加的产品数量数据; (4)按总产品数量查询; (5)按职工姓名查询; (6)输出所有职工的数据; (7)按职工生产的总产品数量查询排名"<<endl; cin>>p; }while(w=='y'); for(int x=0;x<i;x++) { delete s[x]; cout<<"删除所有数据成员"<<endl; } }

⑨ 职工工作量统计系统(数据结构C语言编写) 发我邮箱[email protected]

答案还在嘛 同需要

⑩ C语言职工工作量统计系统

可以联系,看ID