




已阅读5页,还剩29页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单 位: 学 号: 江西农业大学南昌商学院本科课程设计(专业)系统姓 名: _专 业: 计算机科学与技术 指导教师: 江西农业大学南昌商学院二一二 年六月江西农大南昌商学院 摘要摘要开发职工工资查询系统的目的就是为了帮助老板能更好的管理单位的职工工资,提高工作效率,实现职工工资信息管理的规范化和自动化。本系统使用C+编程语言,实现了一般工资管理系统对职工工资信息的浏览、添加、删除、修改和查询功能,节省了大量的人工操作的工作量,自己完成众多的信息处理,减少了数据出现错误的几率,加强了工资记录的安全性和完整性。文本还简单介绍了C+软件的界面及操作方法。简要介绍系统的制作和设计,系统的最后编译过程和简单的操作界面。关键字 : 职工工资查询系统 、C+ 、功能II江西农大南昌商学院 AbstractAbstractThe development of worker wage query system is designed to help the boss to better management units wages for workers, improve work efficiency, achieve wage information management standardization and automation.The system uses C+ programming language, the realization of the general wage management information system to the wages of workers, add, delete, modify browse and query functions, saves a large amount of manual workload, he completed a large number of information processing, reduced the data error rate, strengthen the payroll records of the security and integrity.The text also simply introduced the C+ software interface and methods of operation. Brief introduction of system of production and design, the final system build process and simple operation interface.Keywords: wage query system, C+, function江西农大南昌商学院 目录目录前言 .1第一章 系统环境分析 21.1 C语言概述 21.1 C语言特点 21.1 C语言特色 2第二章 设计平台搭建 32.1VC+6.0的安装 32.1VC+6.0的配置 3第三章 需求分析 103.1设计思想 103.2 系统功能描述103.3功能模块划分 103.4系统流程图分析 10第四章 详细设计与实现 124.1主界面设计代码 124.2Boss 登陆代码和界面 134.3增加职工信息代码和界面 154.4修改职工信息代码和界面 184.5删除职工代码和界面 214.6浏览职工信息代码和界面 234.7职工登陆和查询的代码和界面 26参考文献29江西农大南昌商学院 前言前言职工工资的项目越来越大,而且某些项目的计算很复杂,职工查看自己的工资时候,常常会出现疑问,而以前只有人工负责帮助大家解释各项工资的含义,在更多的情况下,工资中的条目会发生变化,这样老板就要接到很多电话来解释为什么变化,给日常的工作带来了很多麻烦。对于职工来说也很麻烦,他们或者打电话询问或者亲自上门查询。基于以上原因,研究了此职工工资查询系统。1主要技术本系统应用VC+6.0软件开发工具在Windows操作系统上面开发出的此职工工资查询系统。它结合了可视化技术、面向对象技术、网络开发技术等多种先进的软件编程技术和思想,成为创建功能丰富、界面友好的Windows应用软件的工具之一。 职工工资查询系统的系统分析可行性研究。可行性研究的目的是使用最少的代价在尽可能短的时间内确定问题是否能够解决。可行性研究的实质是要进行一次系统分析和设计的简化过程,也就是在较高层次上以抽象的方式进行系统分析和设计的过程。可行性研究的根本任务是对以后的行动方针提出建议。该职工工资查询系统经过从技术可行性和操作可行性等方面研究分析,该系统所要求的功能是完全可以实现的。功能模块划分。工资查询系统主要采用按控制流结合的划分方法。职工工资查询系统是针对企业的工资查询业务进行计算机处理而开发的应用软件,该系统由系统维护、输入、查询、修改、浏览查询等子模块组成,功能基本涵盖普通企业工资查询业务范围,可以有效的提高工资查询水平,本文从需求分析、开发平台选择、系统模块建立、数据库设计、功能模块编程实现软件测试等方面阐释了本系统的设计过程,为了便于说明,文中还绘制了程序流程图,最后附有主要源程序代码和设计界面2江西农大南昌商学院 第一章 系统环境分析第一章 系统环境分析1.1 C语言概述C语言是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出。1978后,C语言已先后被移植到大、中、小及微型机上。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画。1.2 C语言特点1 C是高级语言。它把高级语言的基本结构和语句与低级语言的实用性结合起来。C 语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。2C是结构式语言。结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。C 语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。3C语言功能齐全。具有各种各样的数据类型,并引入了指针概念,可使程序效率更高。而且计算功能、逻辑判断功能也比较强大,可以实现决策目的的游戏。4 C语言适用范围大。适合于多种操作系统,如Windows、DOS、UNIX等等;也适用于多种机型。5.C语言对编写需要硬件进行操作的场合,明显优于其它高级语言,有一些大型应用软件也是用C语言编写的1.3 C语言特色指针是C语言的一大特色,可以说是C语言优于其它高级语言的一个重要原因。就是因为它有指针,可以直接进行靠近硬件的操作,但是C的指针操作不做保护,也给它带来了很多不安全的因素。C+在这方面做了改进,在保留了指针操作的同时又增强了安全性,受到了一些用户的支持,但是,由于这些改进增加语言的复杂度,也为另一部分所诟病。Java则吸取了C+的教训,取消了指针操作,也取消了C+改进中一些备受争议的地方,在安全性和适合性方面均取得良好的效果,但其本身解释在虚拟机中运行,运行效率低于C+/C。一般而言,C,C+,java被视为同一系的语言,它们长期占据着程序使用榜的前三名。江西农大南昌商学院 第二章 设计平台搭建第二章 设计平台搭建2.1VC+6.0的安装1. 首先解压安装文件的压缩包,镜像iso文件可以用winrar解压;2. 然后再选择安装的版本,VC6CN 表示的是中文版,VC6EN表示英文版。3. 打开VC6CN文件夹,其中有如下图标,鼠标双击。4.如下图所示就是我们安装的第一步,单击下一步。4. 选择“接受协议”后单击下一步。6.本软件属于破解版,故无需输入产品ID号码,直接单击下一步。7.选择“安装 visual c+6.0中文企业版(I)”,这就是我们要安装的程序,单击下一步。8.安装位置自己改,单击下一步。9.如下界面,单击“继续”,开始安装软件。10.点击“确定”。11.选择“是”,继续安装。12.选择“typical”继续安装13.选择“ok”。14.选择“确定”15.选择“确定”16. 取消“安装MSDN”前面的勾号,选择“退出”。17.选择“是”,取消MSDN的安装。18. 程序安装完毕,再电脑的“开始菜单”中,选择“所有程序”,在“Microsoft Visual C+ 6.0”目录中选择“Microsoft Visual C+ 6.0”就可以运行程序了。也可以将这个图标发送到桌面快捷方式,这样就可以直接在桌面上运行程序。2.2VC+6.0的环境配置想用CMD直接编译连接cpp形成exe文件,就像配置好jre后直接在DOS里运行java程序一样。1、首先配置环境变量:在path中添加D:/Program Files(x86)/Microsoft Visual Studio /VC98/bin;D是我的VC的安装盘,你可以根据自己前边安装路径的修改但是现在在CMD里输入cl *.cpp时,DOS里提示连CL的命令都不存在,原来在刚才路径的文件夹里少了一个文件mspdb60.dll为了证明这一点,可以点击X:/Program Files/Microsoft Visual Studio /VC98/bin中的cl.exe,它会提示你缺少mspdb60.dll文件,建议重新安装。事实上,只用将目录CommonMSDev98Bin下的mspdb60.dll文件复制到X:Program FilesMicrosoft Visual StudioVC98BIN下即可。此时单独输入CL,命令有效了,但是仍然不能执行cl *.cpp命令。(这次修改环境变量并不需要重启电脑)2、 继续配置环境变量:在我的电脑-属性-高级-环境变量-系统变量中新建系统变量LIB、INCLUDE并设置它们的值为:LIB D:Program Files (x86)Microsoft Visual StudioVC98MFCLib;D:Program Files (x86)Microsoft Visual StudioVC98LibINCLUDED:Program Files (x86)Microsoft Visual StudioVC98ATLInclude;D:Program Files (x86)Microsoft Visual StudioVC98MFCInclude;D:Program Files (x86)Microsoft Visual StudioVC98Include这次再次在DOS里输入cl *.cpp时,仍然提示相同的错误,那是因为没有重启电脑,重启之后,一切解决,大功告成。3、上文中的一切路径请根据自己电脑的实际路径寻找,有些文件夹的名字会不同,需要修改的地方已经用黄色背景标出另外,运行CPP文件时,首先要进入该文件所在的目录,再编译连接运行例如,对于一个放在桌面的1.cpp文件的命令语句:cd F:c+文件 进入该目录cl test.cpp 编译连接形成exe文件test.exe 运行该exe文件30江西农大南昌商学院 第三章 需求分析 第三章 需求分析3.1设计思想 一直以来,工资查询工作都是人工直接来完成的,如果对于一个大型企业来说工作量就很大,而且很容易出错。随着科技的发展,实现现代化和自动化管理既可能也很有心要。工资查询系统是企业对员工进行管理所必须的,工资查询系统包括对员工的工资进行基本工资设定,工资情况、个人工资查询等操作。 3.2 系统功能描述(1) 员工信息:Boss可以对员工工资情况进行浏览,查询,增加,删除,修改。(2) 员工工资设定:包括基本工资,岗位工资,工龄工资分别可以对他们内容进行修改、修改确定、添加、删除等功能。(3)预览:Boss可以预览职工工资单。(4) 个人查询:输入个人姓名和密码就可以登陆和查询员工自己的工资。(5) 最后是退出程序。3.3功能模块划分 1.增加职工信息addzhigong.c存储职工信息的文件名是zhigong(增加学生时文件读取方式采用a+方式)序号、姓名、基本工资、奖金,可采用scanf()输入方式每个学生的密码都赋相同的初值123456权限都设为0注意:每个人的纳税是不一样的,如果这个人的基本工资+奖金超过1600则纳税10%,否则纳税为0每个人的实发工资=基本工资+奖金-纳税2.修改职工信息modifyzhigong.c修改的项目是每个职工的密码、基本工资、奖金、纳税、实发工资,其它不变3.删除职工信息delzhigong.c(删除这个职工的所有信息)4.浏览职工信息showzhigong.c要按实发工资从高到低浏览出每个职工的序号,姓名,密码,权限,基本工资、奖金、纳税、实发工资5.普通职工只有一个模块show.c对于一个普通职工,是用自己的姓名和密码登陆系统后,选择查看工资后必须输入自己的名字和密码后只能浏览出自己的工资如果名字或密码有误,系统可提示重新输入可参考login.c中的程序进入主界面结束退出增加职工信息职工工资查询界面Boss管理界面修改职工信息删除职工信息浏览职工工资个人工资查询结束退出结束退出结束退出3.4系统流程图江西农大南昌商学院 第四章 详细设计与实现第四章 详细设计与实现4.1主界面设计代码#define size 100typedef structlong number;/职工的编号char name9;/职工的姓名char ps7;/职工的密码int power;/职工的权限float salarys;/基本工资float awards;/奖金float shui;/纳税float sum;/实发工资zhigong;#include#include#include#include#include shead.c#include admin.c#include zhigong.cmain()FILE *fp;zhigong tmps,show;char datafile=zhigong,relogin;int i,success=0;printf(=n);printf( 欢 迎 您 进 入 职 工 工 资 管 理 系 统 n);printf(=n);again:printf(请输入您的用户名:);scanf(%s,);printf(请输入您的密码:);for(i=0;i=5;i+)tmps.psi=getch();tmps.ps6=0;fp=fopen(datafile,rb);if(fp=NULL)printf(文件%s打不开n,datafile);exit(1);while(fread(&show,sizeof(zhigong),1,fp)!=0)if(strcmp(,)=0)&(strcmp(tmps.ps,show.ps)=0)printf(登录成功!n);success=1;if(show.power=1)printf(您是管理人员n);admin();if(show.power=0)printf(您是普通职工n);zigong();if(success=0)printf(n您输入的名字或密码有误,是否重新输入?(y/n);relogin=getche();if(relogin=y)|(relogin=Y)printf(请再次输入名字和密码n);goto again;elseprintf(程序结束n);exit(0);4.2 BOSS登陆界面#include addzhigong.c#include modifyzhigong.c#include delzhigong.c#include showzhigong.cvoid admin()int choice=0;while(1)printf(n=n);printf( 进 入 老 板 管 理 界 面 n);printf(=n);printf(=1.增加职工信息=2. 修改职工信息=n);printf(=3.删除职工信息=4.按实发工资从高到低浏览职工信息=n);printf(=0.程序结束=n);printf(请输入您的选择:);scanf(%d,&choice);switch(choice)case 1:addzhigong();break;case 2:modifyzhigong();break;case 3:delzhigong();break;case 4:showzhigong();break;case 0:exit(0);default:break;4.3增加职工信息代码和界面void addzhigong()FILE *fp;zhigong tmps,show;char datafile40=zhigong;int count=0;fp=fopen(datafile,a+);if(fp=NULL)printf(文件%s打不开n,datafile);exit(1);printf(请输入职工的序号、姓名、基本工资、奖金:n);while(count=1600)tmps.shui=(float)(tmps.salarys+tmps.awards)*0.1);tmps.sum=tmps.salarys+tmps.awards-tmps.shui;elsetmps.shui=0;tmps.sum=tmps.salarys+tmps.awards;if(fwrite(&tmps,sizeof(zhigong),1,fp)!=1)printf(文件%s打不开n,datafile);exit(1);count+;if(countsize)printf(输入数据已满n);fclose(fp);printf(所输入职工信息如下:n);fp=fopen(datafile,rb);if(fp=NULL)printf(文件%s打不开n,datafile);exit(1);printf(序号t姓名t基本工资t奖金t纳税t实发工资t密码t权限n);while(fread(&show,sizeof(zhigong),1,fp)!=0)printf(%ldt%st%.1ft%.1ft%.1ft%.1ft%st%dn,show.number,,show.salarys,show.awards,show.shui,show.sum,show.ps,show.power);fclose(fp);4.4修改职工信息代码和界面void modifyzhigong()FILE *fp;zhigong tmps,ssize,show,temp;char name9,ps7,next,datafile40=zhigong;float salarys,awards,shui,sum;int recnumber,i,result=0;begin:printf(请输入要修改信息的职工名字:);scanf(%s,name);fp=fopen(datafile,rb);if(fp=NULL)printf(文件%s打不开n,datafile);exit(1);while(feof(fp)=0)if(fread(&temp,sizeof(zhigong),1,fp)!=0)if(strcmp(,name)=0)result=1;if(result=0)printf(要修改的职工%s不存在n,name);fclose(fp);goto begin;fp=fopen(datafile,rb);if(fp=NULL)printf(文件%s打不开n,datafile);exit(1);recnumber=0;while(fread(&tmps,sizeof(zhigong),1,fp)!=0)if(strcmp(,name)=0)printf(请输入要修改职工%s的密码:,name);scanf(%s,ps);printf(请输入要修改职工%s的基本工资:,name);scanf(%f,&salarys);printf(请输入要修改职工%s的奖金:,name);scanf(%f,&awards);if(salarys+awards=1600)shui=(float)(salarys+awards)*0.1);sum=salarys+awards-shui;elseshui=0;sum=salarys+awards;srecnumber.number=tmps.number;strcpy(,);strcpy(srecnumber.ps,ps);srecnumber.salarys=salarys;srecnumber.awards=awards;srecnumber.shui=shui;srecnumber.sum=sum;srecnumber.power=tmps.power;recnumber+;elsesrecnumber.number=tmps.number;strcpy(,);strcpy(srecnumber.ps,tmps.ps);srecnumber.salarys=tmps.salarys;srecnumber.awards=tmps.awards;srecnumber.shui=tmps.shui;srecnumber.sum=tmps.sum;srecnumber.power=tmps.power;recnumber+;fclose(fp);fp=fopen(datafile,wb+);if(fp=NULL)printf(文件%s打不开n,datafile);exit(1);for(i=0;irecnumber;i+)if(fwrite(&si,sizeof(zhigong),1,fp)!=1)printf(文件%s打不开n,datafile);exit(1);fclose(fp);printf(修改成功!n);printf(是否继续修改(y/n)n);next=getche();if(next=y|next=Y)goto begin;printf(所修改候职工信息如下:n);fp=fopen(datafile,rb);if(fp=NULL)printf(文件%s打不开n,datafile);exit(1);printf(序号t姓名t基本工资t奖金t纳税t实发工资t密码t权限n);while(fread(&show,sizeof(zhigong),1,fp)!=0)printf(%ldt%st%.1ft%.1ft%.1ft%.1ft%st%dn,show.number,,show.salarys,show.awards,show.shui,show.sum,show.ps,show.power);fclose(fp);4.5删除职工信息代码和界面void delzhigong()FILE *fp;zhigong tmps,ssize,show,temp;char name10,next,datafile40=zhigong;int recnumber,i,result=0;begin:printf(请输入要删除职工信息的名字:);scanf(%s,name);fp=fopen(datafile,rb);if(fp=NULL)printf(文件%s打不开n,datafile); exit(1);while(feof(fp)=0)if(fread(&temp,sizeof(zhigong),1,fp)!=0)if(strcmp(,name)=0)result=1;if(result=0)printf(要删除的职工%s不存在n,name);fclose(fp);goto begin;fclose(fp);fp=fopen(datafile,rb);if(fp=NULL)printf(文件%s打不开n,datafile);exit(1);recnumber=0;while(fread(&tmps,sizeof(zhigong),1,fp)!=0)if(strcmp(,name)!=0)srecnumber.number=tmps.number;strcpy(,);strcpy(srecnumber.ps,tmps.ps);srecnumber.salarys=tmps.salarys;srecnumber.awards=tmps.awards;srecnumber.shui=tmps.shui;srecnumber.sum=tmps.sum;srecnumber.power=tmps.power;recnumber+;fclose(fp);fp=fopen(datafile,wb+);if(fp=NULL)printf(文件%s打不开n,datafile);exit(1);for(i=0;i1)for(i=0;irecnumber-1;i+)k=i;for(j=i+1;jrecnumber;j+)if(sk.sumsj.sum)k=j;tmps.number=sk.number;strcpy(,);strcpy(tmps.ps,sk.ps);tmps.salarys=sk.salarys;tmps.awards=sk.awards;tmps.shui=sk.shui;tmps.sum=sk.sum;tmps.power=sk.power;sk.number=si.number;strcpy(,);strcpy(sk.ps,si.ps);sk.salarys=si.salarys;sk.awards=si.awards;sk.shui=si.shui;sk.sum=si.sum;sk.power=si.power;si.number=tmps.number;strcpy(,);strcpy(si.ps,tmps.ps);si.salarys=tmps.salarys;si.awards=tmps.awards;si.shui=tmps.shui;si.sum=tmps.sum;si.power=tmps.power;fp=fopen(datafile,wb+);if(fp=NULL)printf(文件%s打不开n,datafile);exit(1);for(i=0;irecnumber;i+)if(fw
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025国家基础地理中心招聘工作人员(北京)考前自测高频考点模拟试题及完整答案详解1套
- 2025建融金服(河南)科技服务有限公司甘肃分公司招聘30人考前自测高频考点模拟试题及答案详解(历年真题)
- 2025贵州黔东南州台江县民族中医院第二次长期招聘备案制专业技术人员1人模拟试卷及答案详解(历年真题)
- 2025内蒙古能源集团所属单位招聘30人模拟试卷完整答案详解
- 档案证考试题库及答案
- 动物生物考试题库及答案
- 师范认定考试题库及答案
- 安全教育培训云平台课件
- 电焊工考试题及答案题库
- 2025年新疆汽车销售奖励合同范本
- 杭州2025网约车区域考试试题和答案
- 2025广西崇左凭祥市委宣传部招聘编外工作人员1人考试参考题库及答案解析
- 2025江西赣州南康赣商村镇银行招聘4人考试参考题库及答案解析
- 应用代码安全培训
- 社保协议书模板6篇
- 养生保健的四季保养总结
- 国开(河北)2024年秋《现代产权法律制度专题》形考作业1-4答案
- (终稿)加油站全流程诊断与优化提量指导手册
- EN779-2012一般通风过滤器——过滤性能测定(中文版)
- eTOM框架性介绍
- T∕CRIA 20002-2021 炭黑原料油 煤焦油
评论
0/150
提交评论