您好,欢迎来到尚车旅游网。
搜索
您的当前位置:首页C++实习报告

C++实习报告

来源:尚车旅游网


中国石油大学(华东)信息与控制工程学院

《程序设计实习》报告

小型公司工资管理系统的设计

专业班级:2011级电子一班 学 号: 姓 名:

时 间:2012.9.1~2012.9.6

2012年9月

目录

一、实习内容„„„„„„„„„„„„„„„„„„„„„„„„„„„„1 二、设计思路„„„„„„„„„„„„„„„„„„„„„„„„„„„„2 三、程序清单„„„„„„„„„„„„„„„„„„„„„„„„„„„„3 四、运行结果„„„„„„„„„„„„„„„„„„„„„„„„„„„„18 五、程序使用说明„„„„„„„„„„„„„„„„„„„„„„„„„„26 六、总结及心得体会„„„„„„„„„„„„„„„„„„„„„„„„„27

程序设计实习报告

一、实习内容

1.题目《小型公司工资管理系统》设计 2.设计说明与要求

(1) 公司主要有4类人员:经理、技术员、销售员、销售经理。要求存储这些

人的职工号、姓名、月工资、年龄、性别等信息。 (2) 工资的计算方法

A、 经理:固定月薪为8000元;

B、 技术员:工作时间*小时工资(100/小时); C、 销售员:销售额*4%提成;

D、 销售经理:底薪(5000元)+所辖部门销售总额*0.5%

(3) 输入员工数据,要求每类人员不能少于4人,员工信息输出格式参考运行

效果。 (4) 实现功能

① 数据录入:输入各种数据;

② 数据统计:统计各销售经理下属销售员的销售额之和;销售经理按工资进行的冒泡排序;

③ 数据打印:打印各类员工的数据信息;

④ 数据备份:把各类员工的数据信息写入文件中保存; ⑤ 退出:推出本系统;

(5) 菜单说明

⑴数据录入指通过键盘输入各类员工的各项数据;

⑵数据统计指统计各销售经理下身书销售员的销售额及销售额之和;销售按工资进行冒泡排序;

⑶数据打印指按照表格的格式在屏幕上输出各员工的信息; ⑷数据备份指将所有员工的信息保存到文件; ⑸退出:结束程序的运行。

1

程序设计实习报告

二、设计思路

根据总菜单分别设计四种情况,1:数据的输入;2:数据的统计;3:数据的打印,4:数据备份。根据四类人员可以设计出基类Employee;再设计出派生类Seller,Tech,Manager,Sellermanager。要明白哪些是各类所共有的,尽量简单扼要,其中较难的为Seller和Sellermanager的关系,它们之间有从属关系。其中派生类型为公有派生,在各类中分别定义各种成员函数,分别完成各种功能,尤其应该注意的是在制作表格时应注意表格的宽度与数据之间的融洽,宽度要适度。在编写第四种功能时,对我们来说是新内容,要仔细看书研究,研究透了其实很简单,只需要将打印部分稍微改动。编写该程序是我们要循序渐进,多调试,多思考。

2

程序设计实习报告

三、程序清单

#include #include #include #include ofstream file; class Employee {protected: int num; int age; char name[10]; double income; char sex; public:

virtual void Set() {

cout<<\"其姓名:\"; cin>>name;

cout<<\"性别(m/w):\"; cin>>sex; cout<<\"年龄:\"; cin>>age; } void Get() {

cout<<\"┣━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━┫\"<cout<<\"┃\"<3

程序设计实习报告

for(int i=0;icout<class Tech:public Employee { protected: double hour; double per; public: void Set() {

cout<<\"技术员编号:\"; cin>>num; Employee::Set(); cout<<\"工作时间:\"; cin>>hour; per=100; income=hour*per; }

void beifen() {

file<<\"┣━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━┫\"<file<<\"┃\"<4

程序设计实习报告

file<class Seller:public Employee { protected: double salary; int ss; public:

double Gets() { return salary;} void Set() {

cout<<\"销售员编号:\"; cin>>num; Employee::Set(); cout<<\"销售额:\"; cin>>salary;

cout<<\"所属经理编号:\"; cin>>ss;

income=salary*0.04; } void Get1() {

int n=10-strlen(name);

cout<<\"┃\"<cout<5

程序设计实习报告

void Get3() {

cout<<\"┣━━━━╋━━━━╋━━━━╋━━━━╋━━━━╋━━━━━━━━━┫\"<cout<<\"┃\"<for(int i=0;icout<<\"┃\"<<\" \"<void beifen() {

int n=10-strlen(name);

file<<\"┃\"<file<void beifen1()//备份 {

file<<\"┃\"<file<6

程序设计实习报告

class Manager:public Employee { protected: public: void Set() {

cout<<\"经理的编号:\"; cin>>num; Employee::Set(); income=8000; }

void beifen() {

file<<\"┣━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━┫\"<file<<\"┃\"<file<class Sellermanager:public Manager { protected: Seller c1; Seller c2; double totals; public:

7

程序设计实习报告

double Return() {return totals;} void Setc() { c1.Set(); cout<cout<<\"销售经理编号:\"; cin>>num; Employee::Set();

totals=c1.Gets()+c2.Gets(); income=5000+totals*0.005; }

void Get2() {

cout<<\"┣━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━┫\"<cout<<\"┃\"<cout<void Get1()

8

程序设计实习报告

{

cout<<\"职工编号\"<cout<<\"┃\"<<\" 职工号 \"<<\"┃\"<<\" 姓名 \"<<\"┃\"<<\" 销售额 \"<<\"┃\"<cout<<\"┣━━━━━━╋━━━━━╋━━━━━━┫\"<cout<<\"┣━━━━━━╋━━━━━╋━━━━━━┫\"<cout<<\"┣━━━━━━╋━━━━━┻━━━━━━┫\"<void Getc() { c1.Get3(); c2.Get3(); }

void beifen() {

file<<\"职工编号\"<file<<\"┃\"<<\" 职工号 \"<<\"┃\"<<\" 姓名 \"<<\"┃\"<<\" 销售额 \"<<\"┃\"<file<<\"┣━━━━━━╋━━━━━╋━━━━━━┫\"<file<<\"┣━━━━━━╋━━━━━╋━━━━━━┫\"<file<<\"┣━━━━━━╋━━━━━┻━━━━━━┫\"<9

程序设计实习报告

file<<\"┃\"<<\"销售额总计:\"<<\"┃\"<void beifen1() {

ile<<\"┣━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━┫\"<file<<\"┃\"<file<file<<\"┣━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━┫\"<file<<\"┃\"<file<void beifen3() {

file<<\"┣━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━┫\"<c1.beifen1(); file<10

程序设计实习报告

file<<\"┣━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━┫\"<c2.beifen1(); file<Manager A[4]; Tech B[4]; Sellermanager D[4]; int i,k; void main()

{void Did();void did();void tou1();void wei1();void tou2();void wei2(); while(i!=5) { Did(); switch(i) { case 1: while(k!=5) { did(); switch(k) {

case 1:for(i=0;i<4;i++) {A[i].Set();cout<cout<<\"-------------------------------------------\"<11

程序设计实习报告

for(int m=0;m<4;m++) {

for(i=0;i<4-m;i++)

if(D[i].Return()Sellermanager b; b=D[i]; D[i]=D[i+1]; D[i+1]=b; } }continue; } }continue;

case 2:for(i=0;i<4;i++) {D[i].Get1();cout<cout<<\"销售经理按工资排序为:\"<for(i=0;i<4;i++) D[i].Get2(); wei1();continue; case 3:

cout<<\"请等待...............\"<cout<<\"职工基本情况一览表如下:\"<cout<<\"--------------------------------------------------------------\"<12

程序设计实习报告

cout<<\"经理\"<cout<<\"--------------------------------------------------------------\"<cout<<\"------------------------------------------------------------\"<cout<<\"------------------------------------------------------------------\"<file.open(\"C:\\\\C++1.txt\ for(i=0;i<4;i++) {

D[i].beifen();file<file<<\"销售经理按工资排序为::\"<file<<\"┏━━━━━┳━━━━━┳━━━━━┳━━━━━┳━━━━━┓\"<file<<\"┃\"<<\" 职工号 \"<<\"┃\"<<\" 姓名 \"<<\"┃\"<<\" 性别 \"<<\"┃\"<<\" 年龄 \"<<\"┃\"<<\" 工资 \"<<\"┃\"<13

程序设计实习报告

D[i].beifen1();

file<<\"┗━━━━━┻━━━━━┻━━━━━┻━━━━━┻━━━━━┛\"<file<<\"**********************************************\"<file<<\"┏━━━━━┳━━━━━┳━━━━━┳━━━━━┳━━━━━┳━━━━━┓\"<file<<\"┃\"<<\" 职工号 \"<<\"┃\"<<\" 姓名 \"<<\"┃\"<<\" 性别 \"<<\"┃\"<<\" 年龄 \"<<\"┃\"<<\" 工作时间 \"<<\"┃\"<<\" 工资 \"<<\"┃\"<file<<\"┗━━━━━┻━━━━━┻━━━━━┻━━━━━┻━━━━━┻━━━━━┛\"<file<<\"---------------------------------------------------------------------\"<file<<\"┏━━━━━┳━━━━━┳━━━━━┳━━━━━┳━━━━━┓\"<file<<\"┃\"<<\" 职工号 \"<<\"┃\"<<\" 姓名 \"<<\"┃\"<<\" 性别 \"<<\"┃\"<<\" 年龄 \"<<\"┃\"<<\" 工资 \"<<\"┃\"<file<<\"┗━━━━━┻━━━━━┻━━━━━┻━━━━━┻━━━━━┛\"<file<<\"---------------------------------------------------------------------\"<file<<\"┏━━━━━┳━━━━━┳━━━━━┳━━━━━┳━━━━━┳━━━━━┓\"<14

程序设计实习报告

file<<\"┃\"<<\" 职工号 \"<<\"┃\"<<\" 姓名 \"<<\"┃\"<<\" 性别 \"<<\"┃\"<<\" 年龄 \"<<\"┃\"<<\" 销售总额 \"<<\"┃\"<<\" 工资 \"<<\"┃\"<file<<\"┗━━━━━┻━━━━━┻━━━━━┻━━━━━┻━━━━━┻━━━━━┛\"<file<<\"---------------------------------------------------------------------\"<file<<\"┏━━━━━┳━━━━━┳━━━━━┳━━━━━┳━━━━━┳━━━━━┳━━━━━┓\"<file<<\"┃\"<<\" 职工号 \"<<\"┃\"<<\" 姓名 \"<<\"┃\"<<\" 性别 \"<<\"┃\"<<\" 年龄 \"<<\"┃\"<<\" 销售额 \"<<\"┃\"<<\" 工资 \"<<\"┃\"<<\"所属经理号\"<<\"┃\"<file<<\"┗━━━━━┻━━━━━┻━━━━━┻━━━━━┻━━━━━┻━━━━━┻━━━━━┛\"<file<<\"---------------------------------------------------------------------\"<cout<<\" ☆★小型公司工资管理系统★☆\"<15

程序设计实习报告

cout<<\" ┃ 数据打印: 3,并按回车键 ┃\"<>i;

cout<cout<<\" ☆★小型公司工资管理系统★☆\"<>k; }

void tou1() {

cout<<\"┏━━━━━┳━━━━━┳━━━━━┳━━━━━┳━━━━━┓\"<cout<<\"┃\"<<\" 职工号 \"<<\"┃\"<<\" 姓名 \"<<\"┃\"<<\" 性别 \"<<\"┃\"<<\" 年龄 \"<<\"┃\"<<\" 工资 \"<<\"┃\"<16

程序设计实习报告

void wei1() {

cout<<\"┗━━━━━┻━━━━━┻━━━━━┻━━━━━┻━━━━━┛\"<cout<<\"┏━━━━┳━━━━┳━━━━┳━━━━┳━━━━┳━━━━━━━━━┓\"<cout<<\"┃\"<<\" 职工号 \"<<\"┃\"<<\" 姓名 \"<<\"┃\"<<\" 性别 \"<<\"┃\"<<\" 年龄 \"<<\"┃\"<<\" 工资 \"<<\"┃\"<<\" 所属部门经理编号\"<<\"┃\"<void wei2() {

cout<<\"┗━━━━┻━━━━┻━━━━┻━━━━┻━━━━┻━━━━━━━━━┛\"<17

程序设计实习报告

四、运行结果

18

程序设计实习报告

19

程序设计实习报告

20

程序设计实习报告

21

程序设计实习报告

22

程序设计实习报告

23

程序设计实习报告

24

程序设计实习报告

25

程序设计实习报告

五、程序的使用说明

该程序为多级菜单,主菜单有五项选择,分别为数据输入,数据统计,数据打印,数据备份以及结束操作,分别对应输入1,2,3,4,5五种操作。选择1时,会进入二级菜单,二级菜单也有五项选择,分别为经理数据输入,技术员数据输入,销售员数据输入,销售经理数据输入以及返回上一层,分别对应输入1,2,3,4,5五种操作,当操作5选择时,返回主菜单,重新进行选择,对数据备份操作时,会在C盘生成名为“C++1”的txt的文件。详细内容在操作中会有提示。

26

程序设计实习报告

六、总结及心得体会

实习体会

我对这一次C++实习总体感受是:收获颇丰。

这一次编程是我们自学习C++这门课程以来最大的程序,虽然和那些专业编程员所编的程序相比无论在规模还是难度来讲都是小巫见大巫,但对于我来说还是有不小的难度的,其中有许多用到的知识还没有学,所以在编程的过程中遇到不少困难,尤其会用到不少函数,有时不知不觉就会编错,并且随着程序的加长,出错的地方更多,如果不掌握一定的调试技巧,那么会在改错时非常吃力,通过这次实习我们会发现如果没有平时的训练,拥有一定的基本功,我们会对比较大程序感觉一头雾水,无从下手,所以我们在平时一定要重视每一次的训练,一定要把基础知识掌握牢固。

我们在编程时,我们应该对问题先仔细的分析,不能盲目的去编,在编程序前应该先理清思路,列出整体提纲,只有这样才能顺利地编下去,而不至于编着编着不知道下一步该进行哪一步,并且要提前写预习报告,这一点老师也要求了,应为这样会节约很多的时间。

在我们编程时,不免会有一些我们实在解决不了的问题,问老师,老师一般不会告诉你的,因为老师想让你自己解决,这时我们要主动去向别人求助,我们不能为了一个问题而去思考几个小时,我们该放弃时就放弃,有时你会发现当听完别人的讲解时,我们会恍然大悟。所以我们的思维一定要活跃,不能过于死板。

总之通过这次实习,让我们对程序有了更深的了解,学到了其中编程的思维和方法。也使我们对C++程序的基础知识有了更深的掌握,相信会对我们即将到来的二级考试有不少的帮助。

2012-9-5

27

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- sceh.cn 版权所有 湘ICP备2023017654号-4

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务