/*
* 程序的版权和版本声明部分
* Copyright (c)2012, 烟台大学计算机学院学生
* All rightsreserved.
* 文件名称: fun.cpp
* 作 者:王飞
* 完成日期:2013 年3 月 23日
* 版本号: v1.0
* 对任务及求解方法的描述部分:类与职工工资
* 输入描述:略
* 问题描述:略
* 程序输出:如下
*/
#include <iostream>
#include <stdlib.h>
#include <fstream>
using namespace std;
int number=0;
class Salary{
public:
void shuru();
void add();
void paixu();
void print();
void Save();
private:
double salary[1000];
};
int main(void){
Salary n;
cout<<"请您输入职工工资(输入-1结束):"<<endl;
n.shuru();
cout<<"每个员工涨工资之后:"<<endl;
n.add();
n.print();
cout<<"涨后工资排序后:"<<endl;
n.paixu();
n.print();
n.Save();
system("PAUSE");
}
void Salary::shuru(){
double n;
number=0;
do{
cin>>salary[number];
n=salary[number];
number++;
}while(n!=-1);
}
void Salary::print(){
for(int i=0;i<number;i++){ //定义输出
if(salary[i]!=-1)
cout<<salary[i]<<" "<<endl;
}
}
void Salary::add(){
for(int i=0;i<number;i++){
if(salary[i]!=-1)
salary[i]+=100; //工资增加100
}
}
void Salary::paixu(){ //冒泡排序
double t;
for(int i=0;i<number-1;i++){
for(int j=0;j<number-i-1;j++){
if(salary[j]>salary[j+1] && salary[j]!=-1)
{
t=salary[j+1];
salary[j+1]=salary[j];
salary[j]=t;
}
}
}
}
void Salary::Save()
{
ofstream outfile ("f1.txt",ios::out); //依次写入文件
if(!outfile)
{
cerr<<"open error!"<<endl;
exit(1);
}
for(int i=0;i<number;i++)
{
outfile<<salary[i]<<" ";
}
outfile.close();
}
输出结果:

心得体会:
把以前学的东西要都放到类里面!文件操作,学会了!
3589

被折叠的 条评论
为什么被折叠?



