/** (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称: 工资类(Salary)
* 作 者: 冯珍珍
* 完成日期: 2012年 3月 16日
* 版 本 号:
* 对任务及求解方法的描述部分
* 输入描述:
* 问题描述:设计一个工资类(Salary),其中的数据成员有:double型数组salary[50](实际人数可以少于50,固定取50可能造成空间浪费),整型值number表示的职工人数。在main函数中调用你自己设计好的成员函数完成下面的功能:(1)输入职工工资,工资保存到salary数组中,实际人数保存到number中(输入-1标志着工资输入结束);(2)给每个人涨100元工资;(3)对涨后的工资进行排序;(4)输出排序后的工资。
* 程序输出:
* 程序头部的注释结束*/
#include<iostream>
using namespace std;
class salary //声明salary类
{
public:
void set_salary();
void add_salary(int x);
void sort_salary();
void show_salary();
static int number; //记录人数
private:
double salarys[50];
};
int salary::number = 0;//对类中成员赋初值
void salary::set_salary()
{
int i=0,x;
cout<<" 请输入工资数:"<<endl;
cin>>x;
while (x>0)
{
salarys[i]=x;
i++;
cin>>x;
}
number=i;
}
void salary::add_salary(int x)
{
int i;
for(i=0;i<number;i++)
{
salarys[i]+=x;
}
}
void salary::sort_salary()
{
int t;
for(int i=0;i<number;i++)
for(int j=0;j<number-1-i;j++)
{
if(salarys[j]<salarys[j+1])
{
t=salarys[j];
salarys[j]=salarys[j+1];
salarys[j+1]=t;
}
}
}
void salary::show_salary()
{
for(int i=0;i<=number-1;i++)
{
cout<<"salarys :"<<salarys[i]<<endl;
}
}
int main()
{
salary s;
s.set_salary(); //输入值
s.add_salary(100); //涨工资
s.sort_salary(); //排序
cout<<"增加工资后由高到低的排序为:"<<endl;
s.show_salary( ); //输出结果
system("PAUSE");
return 0;
}
第四周任务四(工资类(Salary))
最新推荐文章于 2021-12-06 12:03:38 发布