当前位置:
文档之家› C++企业工资管理系统课程设计
C++企业工资管理系统课程设计
2
部门
//友员函数
//友员函数
(5) 查询操作:void find(int x) ,该模版主要实现工资信息的查询统计操 (6) 统计操作:void count(int x),实现最高工资,最低工资等的统计; (7) 退出;
三、详细设计
(1)类模块
class message{ private: char bornplace[10]; char duty[10]; int ID;
没找到要修改 的
end
6
(6)查找函数流程图
开始
int i,j,k,num;char ming,
k=1
输入要查询的名
b[i].name=ming
没有找到要查找的姓名
b[j].put
结束
(8) 统计函数流程图
四、调试分析
1、开始使用文件保存时出现不能为 read 错误,后通过查阅资料解决了问题; 2、删除部分程序开始不能判断是否找到了要删除的人员信息,后来加了 flag 标记后可以判断了; 3、统计部分程序在求均方差的时候出现算法错误,后来查阅了均方差公式后改 正了过来 4、使用友员函数可以解决类外作用域问题。
basesalary=a_basesalary;
3
jiangjin=a_jiangjin;
} message &operator=(const message &s) { strcpy(name,); strcpy(bornplace,s.bornplace); strcpy(duty,s.duty); strcpy(bumen,s.bumen); ID=s.ID; //**********************运算符重载
输入删除的名
name=ming
i<temp,j<temp-1
a[j]=b[i],i++,j++
i++
没有找到要删除的人
end
(5)修改函数流程图
start int i,j,char name 输入 ming
b[i].name=ming
输入修改的信息(名字, ,职务,身份证号,籍贯,工资)
cin(name,duty,ID,bornplace,basesalary,jiangjin)
11
b++; break; case 3://删除 del(b); b--; break; case 4://修改 modify(b); break; case 5://查询 cout<<" ┌─────────────┐"<<endl; cout<<"│请输入您要选择的查询方式:│"<<endl; cout<<"│1.按姓名查找操作 │"<<endl; cout<<"│2.按工号查找操作 │"<<endl; cout<<"└─────────────┘"<<endl; cin>>or; if(or==1) namfind(b); else if(or==2) numfind(b); break; case 6://统计 int cc; cout<<"┌─────────────┐"<<endl; cout<<"│请输入您要选择的查询方式:│"<<endl; cout<<"│1.按部门统计 │"<<endl; cout<<"│2.按单位统计 │"<<endl; cout<<"└─────────────┘"<<endl; //cin>>or;: cin>>cc; if(cc==1) bmcount(b); else if(cc==2) dwcount(); break; case 7: exit(0); } cout<<"********欢迎进入企业工资管理系统********"<<endl; cout<<"***********1.工资信息录入操作***********"<<endl; cout<<"***********2.工资信息增加操作***********"<<endl; cout<<"***********3.工资信息删除操作***********"<<endl; cout<<"***********4.工资信息修改操作***********"<<endl; cout<<"***********5.工资信息查找操作***********"<<endl;
二、 概要设计
1. 设计类的数据类型定义 class message{ private: char bornplace[10],duty[10];//籍贯 职务 int ID;//身份证号
public: char name[10],bumen[10];//姓名 int basesalary;//基本工资 int jiangjin;//奖金 friend void modify(int x); friend int del(int x); } 2. 程序模块 (1) 录入操作:void writen(int x),该模版主要实现工资信息的录入; (2) 添加操作:void add(int x),该模版主要实现工资信息的添加; (3) 删除操作:void del(int x),该模版主要实现工资信息的删除; (4) 修改操作:void modify(int x) ,该模版主要实现工资信息的修改;
1
一、 需求分析
1. 数据存储采用文件形式。 2. 标准 C++输入输出 3. 程序完成企业人事工资管理,能够实现工资的录入、统计(整个单位的平均 工资、最高工资、最低工资) 、查询、修改、删除等功能。 4. 程序执行的命令: (1) 录入员工工资信息; (2) 选择需要执行的操作(添加、统计、删除、修改、查询) ; (3) 输出结果。
退 出
结束
(3)录入、添加函数流程图
开始
cout(请输入您要添加的信
cout(姓名,职务,身份证号,籍贯,基本工资,奖金, )
cin(name, ,duty,ID,bornplace,basesalary,,jiangjin,)
结束
(4) 删除函数流程图
5
开始
int i,j,temp,flag=-1,char ming
public: char name[10]; char bumen[10]; int basesalary; int jiangjin; message(){} //********************构造函数
void xinxi(char a_name[],char a_bornplace[],char a_duty[],char a_bumen[],int a_ID,int a_basesalary,int a_jiangjin) { strcpy(name,a_name); strcpy(bornplace,a_bornplace); strcpy(duty,a_duty); strcpy(bumen,a_bumen); ID=a_ID;
目录
一、 需求分析.......................................1 二、 概要设计.......................................3 三、 详细设计......................................12 四、 调试分析......................................12 五、 用户手册......................................13 六、 测试数据......................................17 七、 附录..........................................31
五、用户手册
7
1.本程序的运行环境为 doc 操作系统; 2.进入界面后,按照提示输入选择; 3.选择 1:执行工资信息录入操作; 4.选择 2:执行工资信息添加操作; 5.选择 3:执行工资信息删除操作; 6.选择 4:执行工资信息修改操作; 7.选择 5:执行工资信息查询操作; 8.选择 6:执行工资信息统计操作; 9.选择 7:退出工资管理系统; 10.输入后按回车键,即可输出信息,按提示输入即可。
basesalary=s.basesalary;
jiangjin=s.jiangjin; return * this; } friend void modify(int x); friend int del(int x); void put() { cout<<name<<" "<<bornplace<<" "<<duty<<" "<<bumen<<" "<<ID<<" //定义 put 函数,以便于其他函数的调用 //************************友元函数
//**************************析构
void main() { int i,b; int or; cout<<"********欢迎进入企业工资管理系统********"<<endl; cout<<"***********1.工资信息录入操作***********"<<endl; cout<<"***********2.工资信息增加操作***********"<<endl; cout<<"***********3.工资信息删除操作***********"<<endl; cout<<"***********4.工资信息修改操作***********"<<endl; cout<<"***********5.工资信息查找操作***********"<<endl; cout<<"***********6.工资信息统计操作***********"<<endl; cout<<"***********7.退出***********************"<<endl; cout<<"*********请输入你要进行的操作选项*******"<<endl; cin>>i; cout<<endl; while(i!=10) { switch(i) { default: cout<<"你输入的有误,请重新输入。"<<endl;break; case 1: cout<<"输入企业人员的人数:"; //输入信息 cin>>b; cout<<endl; writein(b); break; case 2://添加 add(b);