您的位置:首页 > 其它

第三周 项目5-4 工资类——数据输出到文件

2015-03-28 14:07 148 查看
问题及代码:
/*。
*Copyright(c)2014,烟台大学计算机学院
*All right reserved,
*文件名:test.cpp
*作者:liu_feng_zi_
*完成日期:2015年3月28日
*版本号:v1.0
*
问题描述:增加一个成员函数,将排序后结果保存到一个文件中。
涨500元工资,排序后工资数据,然后输出结果
*输入描述:
*程序输出:
*/
#include <iostream>
#include <fstream>
#include <cstdlib>
using namespace std;
class Salary
{
private:
double salarys[500]; //多人的工资
int number;  //实际人数
public:
void set_salarys();
void add_salarys(int x);
void sort_salarys();
void show_salarys();
void read_data();
void write_data();
};
int main ()
{
Salary sal1;
sal1.read_data();
sal1.add_salarys(500);
sal1.sort_salarys();
sal1.show_salarys();
sal1.write_data();
}
void Salary::read_data()
{
int i;
ifstream infile("salary.txt",ios::in);
i=0;
while(infile>>salarys[i])
i++;
number=i;
infile.close();
}
void Salary::write_data( )
{
int i;
ofstream outfile("salary_ordered.txt",ios::out);
for(i=0; i<number; ++i)
outfile<<salarys[i]<<endl;
outfile.close();
}
void Salary::add_salarys(int x)
{
int i=0;
for(;i<number;i++)
salarys[i]+=x;
}
void Salary::sort_salarys()
{
int i,j;
double n;
for(i=0;i<number-1;i++)
for(j=0;j<number-i-1;j++)
{
if(salarys[j]<salarys[j+1])
{
n=salarys[j+1];
salarys[j+1]=salarys[j];
salarys[j]=n;
}
}
}
void Salary::show_salarys()
{
int i=0;
for(;i<number;i++)
cout<<salarys[i]<<'\t';
}


运行结果:


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: