第二周 项目五:数组作数据成员(2)

来源:互联网 发布:淘宝美工助理要钱有吗 编辑:程序博客网 时间:2024/05/29 11:03

问题及代码:

/** Copyright (c) 2015, 烟台大学计算机学院* All rights reserved.* 文件名称:lei.cpp* 作    者:李楠* 完成日期:2015年3月19日* 版 本 号:v1.0** 问题描述:设计一个工资类(Salary),其中类的数据成员如下:* 输入描述:要设计的成员函数有:•void set_salarys( ):输入职工工资(输入-1标志着工资输入结束),工资保存到salary数组中,实际人数保存到number中;•void add_salarys(int x):给每个人涨x元工资•void sort_salarys():对工资排序•void show_salarys( ):显示工资信息(2)用salary[50]有限制,实际人数少时,会浪费空间,人数多了,无法完成任务。在main()中先输入职工人数,作为参数传递给输入职工工资的成员函数,然后利用动态分配内存的机制,开辟一个大小正好的连续空间,完成上面的工作。* 程序输出:略*/#include <iostream>using namespace std;class Salary{public:void set_salarys( );void add_salarys(int x);void sort_salarys();void show_salarys( );private:double *salarys;    //工资,定义为指针,将来指向一个动态数组int number;//实际人数};int main( ){Salary sal;sal.set_salarys( );sal.add_salarys(500);sal.sort_salarys();sal.show_salarys( );return 0;}void Salary::set_salarys( ){int x,i;cout<<"请输入人数: ";cin>>number;salarys=new double[number];  //分配大小正好合适的空间存放数据cout<<"请输入每位职工的工资: "<<endl;for(i=0;i<number;++i){cin>>x;salarys[i]=x;}}void Salary::add_salarys(int x){int i;for (i=0;i<number;i++)salarys[i]+=x;}void Salary::sort_salarys(){int i,j;double t;for (i=0;i<number-1;i++)for(j=0;j<number-i-1;j++)if (salarys[j]<salarys[j+1]){t=salarys[j];salarys[j]=salarys[j+1];salarys[j+1]=t;}}void Salary::show_salarys( ){int i;for (i=0;i<number;i++)cout<<salarys[i]<<" ";}


运行结果:

请输入人数:4

请输入每位员工的工资:

1223 5478 20145 9645
20645 10145 5978 1723
Process returned 0 (0x0)   execution time : 13.670 s
Press any key to continue.

 

知识点总结:

为什么会出现乱码??????Who can tell me!!!!?

学习心得:

我开始以为是电脑的问题,可是问了度娘改了之后还是乱码,我就无语了.....

0 0
原创粉丝点击