求这个大题的C++作业答案。。有急用!! 255
1、问题描述题目2“公司员工信息管理系统设计”1、问题描述某公司需要存储雇员的编号、姓名、性别、所在部门,级别,并进行工资的计算。其中,雇员分为经理、技术人员、销售人员和...
1、问题描述
题目2 “公司员工信息管理系统设计”
1、问题描述
某公司需要存储雇员的编号、姓名、性别、所在部门,级别,并进行工资的计算。其中,雇员分为经理、技术人员、销售人员和销售经理。
设计一程序能够对公司人员进行管理。
2、功能要求
(1)添加功能:程序能够任意添加上述四类人员的记录,可提供选择界面供用户选择所要添加的人员类别,要求员工的编号要唯一,如果添加了重复编号的记录时,则提示数据添加重复并取消添加。
(2)查询功能:可根据编号、姓名等信息对已添加的记录进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息;
(3)显示功能:可显示当前系统中所有记录,每条记录占据一行。
(4)编辑功能:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。
(5)删除功能:主要实现对已添加的人员记录进行删除。如果当前系统中没有相应的人员记录,则提示“记录为空!”并返回操作;否则,输入要删除的人员的编号或姓名,根据所输入的信息删除该人员记录,如果没有找到该人员信息,则提示相应的记录不存。
(6)统计功能:能根据多种参数进行人员的统计。例如,统计四类人员数量以及总数,
或者统计男、女员工的数量等信息。
(7)保存功能:可将当前系统中各类人员记录存入文件中,存入方式任意。
(8)读取功能:可将保存在文件中的人员信息读入到当前系统中,供用户进行使用。
(9)排序功能:可按工资排序。 展开
题目2 “公司员工信息管理系统设计”
1、问题描述
某公司需要存储雇员的编号、姓名、性别、所在部门,级别,并进行工资的计算。其中,雇员分为经理、技术人员、销售人员和销售经理。
设计一程序能够对公司人员进行管理。
2、功能要求
(1)添加功能:程序能够任意添加上述四类人员的记录,可提供选择界面供用户选择所要添加的人员类别,要求员工的编号要唯一,如果添加了重复编号的记录时,则提示数据添加重复并取消添加。
(2)查询功能:可根据编号、姓名等信息对已添加的记录进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息;
(3)显示功能:可显示当前系统中所有记录,每条记录占据一行。
(4)编辑功能:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。
(5)删除功能:主要实现对已添加的人员记录进行删除。如果当前系统中没有相应的人员记录,则提示“记录为空!”并返回操作;否则,输入要删除的人员的编号或姓名,根据所输入的信息删除该人员记录,如果没有找到该人员信息,则提示相应的记录不存。
(6)统计功能:能根据多种参数进行人员的统计。例如,统计四类人员数量以及总数,
或者统计男、女员工的数量等信息。
(7)保存功能:可将当前系统中各类人员记录存入文件中,存入方式任意。
(8)读取功能:可将保存在文件中的人员信息读入到当前系统中,供用户进行使用。
(9)排序功能:可按工资排序。 展开
4个回答
展开全部
这个不难,怎么提供给你?私信我
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
代做,需要联系。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2016-06-09
展开全部
把扩展名改成CPP,然后编译连接///////////////////////////////下面这个程序是我大二上数据结构课时交的作业,现在正好电脑里面放着,所以就给你,应该满足你老师的要求了.编译环境是VC++6.0如果不会用的话就在问题补充里说,那个"例"是我临时给你打上去的,随便写了点,你要看不懂例子不会输命令就问我./*****************************************************************/#include#include#include#include#include//清空当前屏幕#defineClearScreen()system("cls")//显示字符串szPrompt并等待用户按下任意键#definePause(szPrompt)printf("%s",szPrompt),getch()typedefstructcarinformation//车辆信息{charszRegistrationMark[64];//车牌号charszArrivalTime[16];//到达时间charszEntranceTime[16];//进入停车场(开始计费)时间charszDepartureTime[16];//离开时间}TCARINFORMATION,*LPTCARINFORMATION;typedefstructcarstack{LPTCARINFORMATIONlpCarInformation;//车辆信息intnTop;//栈顶元素下标intnStackSize;//栈容量}TCARSTACK,*LPTCARSTACK;//初始化栈lpCarStack,将其容量设置为nSizevoidInitStack(LPTCARSTACK&lpCarStack,intnSize){lpCarStack=(LPTCARSTACK)malloc(sizeof(TCARSTACK));lpCarStack->lpCarInformation=(LPTCARINFORMATION)malloc(nSize*sizeof(TCARINFORMATION));lpCarStack->nTop=-1;lpCarStack->nStackSize=nSize;}//车辆信息carinfo入栈lpCarStackvoidPush(LPTCARSTACK&lpCarStack,TCARINFORMATIONcarinfo){lpCarStack->nTop++;lpCarStack->lpCarInformation[lpCarStack->nTop]=carinfo;}//车辆信息从栈lpCarStack中弹出并存入carinfovoidPop(LPTCARSTACK&lpCarStack,TCARINFORMATION&carinfo){carinfo=lpCarStack->lpCarInformation[lpCarStack->nTop];lpCarStack->nTop--;}//若栈lpCarstack空,返回TRUE;否则,返回FALSEBOOLIsStackEmpty(LPTCARSTACKlpCarStack){returnlpCarStack->nTop==-1;}//若栈lpStackFull满,返回TRUE;否则,返回FALSEBOOLIsStackFull(LPTCARSTACKlpCarStack){returnlpCarStack->nTop==(lpCarStack->nStackSize-1);}//销毁栈lpCarStack,将指针lpCarStack置为NULLvoidDestroyStack(LPTCARSTACK&lpCarStack){free(lpCarStack->lpCarInformation);free(lpCarStack);lpCarStack=NULL;}typedefstructcarnode//链队结点信息{TCARINFORMATIONcarinfo;//车辆信息structcarnode*lpNext;//指向下一个元素的指针}TCARNODE,*LPTCARNODE;typedefstructcarqueue//链队{LPTCARNODElpHead;//头结点LPTCARNODElpRear;//指向当前队尾的指针intnEffectiveSize;//当前队中元素个数}TCARQUEUE,*LPTCARQUEUE;//初始化链队lpCarQueuevoidInitQueue(LPTCARQUEUE&lpCarQueue){lpCarQueue=(LPTCARQUEUE)malloc(sizeof(TCARQUEUE));lpCarQueue->lpHead=(LPTCARNODE)malloc(sizeof(TCARNODE));lpCarQueue->lpHead->lpNext=NULL;lpCarQueue->lpRear=lpCarQueue->lpHead;lpCarQueue->nEffectiveSize=0;}//车辆信息carinfo入队lpCarQueuevoidEnQueue(LPTCARQUEUE&lpCarQueue,TCARINFORMATIONcarinfo){LPTCARNODElpCarNode=(LPTCARNODE)malloc(sizeof(carnode));lpCarNode->carinfo=carinfo;lpCarNode->lpNext=NULL;lpCarQueue->lpRear->lpNext=lpCarNode;lpCarQueue->lpRear=lpCarQueue->lpRear->lpNext;lpCarQueue->nEffectiveSize++;}//队头元素从链队lpCarQueue中出队并存入carinfovoidDeQueue(LPTCARQUEUE&lpCarQueue,TCARINFORMATION&carinfo){LPTCARNODElpTemp=lpCarQueue->lpHead->lpNext;carinfo=lpTemp->carinfo;lpCarQueue->lpHead->lpNext=lpTemp->lpNext;free(lpTemp);lpCarQueue->nEffectiveSize--;}//若链队lpCarQueue为空,返回TRUE;否则,返回FALSEBOOLIsQueueEmpty(LPTCARQUEUElpCarQueue){returnlpCarQueue->nEffectiveSize==0;}//销毁链队lpCarQueuevoidDestroyQueue(LPTCARQUEUE&lpCarQueue){LPTCARNODElpNextCarNode=NULL;for(LPTCARNODElpCarNode=lpCarQueue->lpHead;lpCarNode!=NULL;lpCarNode=lpNextCarNode){lpNextCarNode=lpCarNode->lpNext;free(lpCarNode);}free(lpCarQueue);lpCarQueue=NULL;}//将字符串时间格式转换为数字(分钟)格式,例如12:36将被转换为756(12*60+36)intConvertTimeFormat(char*lpTime){intnHour=0;intnMinute=0;sscanf(lpTime,"%d:%d",&nHour,&nMinute);returnnHour*60+nMinute;}//根据在停车场内的停留时间nContinuanceMinutes(分钟)计算费用doubleCalculateExpense(intnContinuanceMinutes){returnnContinuanceMinutes*(5.0/60);}intmain(void){intnParkCapability=0;//停车场容量putchar('\n');printf("请输入停车场容量:");scanf("%d",&nParkCapability);LPTCARSTACKlpCarStack=NULL;//停车场,用栈模拟InitStack(lpCarStack,nParkCapability);LPTCARQUEUElpCarQueue=NULL;//便道,用链队模拟InitQueue(lpCarQueue);charcCommandType=NULL;//命令类型charszUserInput[128]=;//用户输入do{ClearScreen();putchar('\n');puts("--------------------");puts("[命令类型]");puts("A-车辆到达");puts("D-车辆离开");puts("E-停止输入");puts("O-显示当前停车场和便道使用情况");putchar('\n');puts("例:");puts("A,冀A1234,14:26");puts("D,冀A1234,16:51");puts("E");puts("O");putchar('\n');printf("请输入命令:");scanf("%s",szUserInput);puts("--------------------");charszCarInformation[128]=;sscanf(szUserInput,//将命令类型与车辆信息分开存放"%c,%s",&cCommandType,//用户输入的前半部分,即命令类型szCarInformation//用户输入的后半部分,即车辆信息);char*lpCommaLocation=NULL;//车辆信息字符串中的逗号位置for(lpCommaLocation=szCarInformation;*lpCommaLocation!='\0';lpCommaLocation++){if(*lpCommaLocation==','){break;}}*lpCommaLocation='\0';TCARINFORMATIONcarinfo=;//存储本次用户输入的车辆信息strcpy(carinfo.szRegistrationMark,szCarInformation);if(cCommandType=='A'){strcpy(carinfo.szArrivalTime,lpCommaLocation+1);if(FALSE==IsStackFull(lpCarStack)){strcpy(carinfo.szEntranceTime,carinfo.szArrivalTime);Push(lpCarStack,carinfo);printf("已进入停车场第%d个车位\n",lpCarStack->nTop+1);printf("车牌号:\t\t%s\n",carinfo.szRegistrationMark);printf("进入时间:\t%s\n",carinfo.szEntranceTime);puts("是否收费:\t是");}else{EnQueue(lpCarQueue,carinfo);printf("停车场已满,已停放在便道的第%d个车位\n",lpCarQueue->nEffectiveSize);printf("车牌号:\t\t%s\n",carinfo.szRegistrationMark);printf("停放时间:\t%s\n",carinfo.szArrivalTime);puts("是否收费:\t否");}}elseif(cCommandType=='D'){strcpy(carinfo.szDepartureTime,lpCommaLocation+1);LPTCARSTACKlpTempCarStack=NULL;InitStack(lpTempCarStack,nParkCapability);TCARINFORMATIONcarinfoOut=;BOOLbIsCarFound=FALSE;while(FALSE==IsStackEmpty(lpCarStack)){Pop(lpCarStack,carinfoOut);if(0!=strcmp(carinfoOut.szRegistrationMark,carinfo.szRegistrationMark)){Push(lpTempCarStack,carinfoOut);}else{bIsCarFound=TRUE;break;}}while(FALSE==IsStackEmpty(lpTempCarStack)){TCARINFORMATIONtempcarinfo=;Pop(lpTempCarStack,tempcarinfo);Push(lpCarStack,tempcarinfo);}if(FALSE==bIsCarFound){printf("车牌号为%s的车未进入停车场.\n",carinfo.szRegistrationMark);Pause("--------------------\n按任意键输入下一条信息\n");continue;}strcpy(carinfoOut.szDepartureTime,carinfo.szDepartureTime);intnEntranceTime=ConvertTimeFormat(carinfoOut.szEntranceTime);intnDepartureTime=ConvertTimeFormat(carinfoOut.szDepartureTime);intnContinuanceMinutes=nDepartureTime-nEntranceTime;printf("计费时段:\t%s-%s(共%d分钟)\n",carinfoOut.szEntranceTime,carinfoOut.szDepartureTime,nContinuanceMinutes);doublerExpense=CalculateExpense(nContinuanceMinutes);printf("应交纳的费用:\t%.1lf元\n",rExpense);if(FALSE==IsQueueEmpty(lpCarQueue)){TCARINFORMATIONtempcarinfo=;DeQueue(lpCarQueue,tempcarinfo);strcpy(tempcarinfo.szEntranceTime,carinfoOut.szDepartureTime);Push(lpCarStack,tempcarinfo);puts("--------------------");printf("停放在便道的第1个车位,车牌号为%s的车已进入停车场\n",tempcarinfo.szRegistrationMark);}}elseif(cCommandType=='E'){puts("********************");puts("陈赛-Build20090507\n");puts("********************");break;}elseif(cCommandType=='O'){ClearScreen();putchar('\n');puts("[停车场使用情况]\n");puts("[车位]\t[车牌号]\t[到达时间]\t[进入(开始计费)时间]\n");for(inti=0;inTop;i++){printf("%d\t%s\t\t%s\t\t%s\n",i+1,lpCarStack->lpCarInformation[i].szRegistrationMark,lpCarStack->lpCarInformation[i].szArrivalTime,lpCarStack->lpCarInformation[i].szEntranceTime);}putchar('\n');putchar('\n');putchar('\n');puts("[便道使用情况]\n");puts("[车位]\t[车牌号]\t[到达时间]\t[进入(开始计费)时间]\n");intnNum=0;for(LPTCARNODElpCarNode=lpCarQueue->lpHead->lpNext;lpCarNode!=NULL;lpCarNode=lpCarNode->lpNext){nNum++;printf("%d\t%s\t\t%s\t\t%s\n",nNum,lpCarNode->carinfo.szRegistrationMark,lpCarNode->carinfo.szArrivalTime,lpCarNode->carinfo.szEntranceTime);}putchar('\n');}else{puts("输入信息有误.第一个字符只能为'A'或'D'或'E'或'O'(区分大小写).");}Pause("--------------------\n按任意键输入下一条信息.\n");}while(TRUE);DestroyStack(lpCarStack);DestroyQueue(lpCarQueue);Pause("\n按任意键退出程序\n");return0;}另外,站长团上有产品团购,便宜有保证
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2016-06-08
展开全部
就说作业被你家猫撕了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询