您的位置:首页 > 其它

第三周项目5.3 5.4 5.5 文件输入工资 通过多文件组织

2015-03-26 13:35 204 查看
/*
*Copyright (c)2015,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:score.cpp
*作    者:惠睿
*完成日期:2015年3月26日
*版 本 号:v1.0
*
*问题描述:文件输入工资进行工人工资相关运算。
*程序输入:工人工资,涨的工资金额数。
*程序输出:工人工资。
*/
#include <iostream>
#include "student.h"
using namespace std;
int main()
{
int x;
Salary s;
cout<<"请输入工人的工资:"<<endl;
s.set_salarys();
s.sort_salarys();
cout<<"工人的工资从高到低为:"<<endl;
s.show_salarys();
cout<<endl<<"请输入涨多少工资:";
cin>>x;
s.add_salarys(x);
s.show_salarys();
return 0;
}

#ifndef STUDENT_H_INCLUDED
#define STUDENT_H_INCLUDED
class Salary
{
public:
void set_salarys();
void add_salarys(int x);
void sort_salarys();
void show_salarys();
private:
int num;
double salarys[500];
};
#endif

#include <iostream>
#include <fstream>
#include <cstdlib>
#include "student.h"
using namespace std;
void Salary::set_salarys()
{
int number=0;
ifstream infile("salary.txt",ios::in);
if(!infile)
{
cerr<<"open error!"<<endl;
exit(1);
}
while(infile>>salarys[number])
{
number++;
}
num=number;
infile.close();
}
void Salary::add_salarys(int x)
{
int i;
for(i=0; i<num; i++)
salarys[i]+=x;
}
void Salary::sort_salarys()
{
int i,j,t;
for(i=0; i<num-1; i++)
for(j=0; j<num-i-1; j++)
{
if(salarys[j]<salarys[j+1])
{
t=salarys[j+1];
salarys[j+1]=salarys[j];
salarys[j]=t;
}
}
}
void Salary::show_salarys()
{
int i,g=0;
for(i=0; i<num; i++)
{
cout<<salarys[i]<<" ";
g++;
if(g%5==0)
cout<<endl;
}
}


运行结果:

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