第八周项目1-数组做数据成员(3)

来源:互联网 发布:栅格矢量化算法 编辑:程序博客网 时间:2024/05/16 02:01

问题及代码:


main:

/* *Copyright (c) 2016,烟台大学计算机学院 *All rights reserved. *文件名称:zwj.cpp *作    者:张伟晶 *完成日期:2016年4月17日 *版 本 号:v1.0 * *问题描述:增加一个成员函数,用于从文件中读出数据,再增加一个成员函数,将排序后的结果保存到一个文件中,用多文件的方式组织程序 *输入描述: *程序输出:文件中工资排序后输出 */#include<iostream>#include<fstream>#include<cstdlib>#include"class.h"using namespace std;//const int N=500;int main(){    Salary gongzi;    gongzi.read_data();    gongzi.sort_salarys();    gongzi.show_salarys();    gongzi.save_salarys();    return 0;}

class 类:

#ifndef CLASS_H_INCLUDED#define CLASS_H_INCLUDED#include<iostream>#include<fstream>#include<cstdlib>using namespace std;const int N=500;class Salary{public:    void read_data();    void write_data();    void sort_salarys();    void show_salarys();    void save_salarys();private:    double salarys[N];    int number;};#endif // CLASS_H_INCLUDED


file :

#include<iostream>#include<fstream>#include<cstdlib>#include"class.h"using namespace std;//const int N=500;void Salary::read_data(){    int i;    ifstream infile("salary.txt",ios::in);    if(!infile)    {        cerr<<"open error!"<<endl;        exit(1);    }    i=0;    while(infile>>salarys[i])        i++;    number=i;    infile.close();}void Salary::save_salarys(){    int i;    ofstream outfile("salary2.txt",ios::out);    if(!outfile)    {        cerr<<"save error!"<<endl;        exit(1);    }    for(i=0;i<number;i++)        outfile<<salarys[i]<<" ";    outfile.close();    cout<<"已经将数据存入文件"<<endl;}


sort_show :


#include<iostream>#include<fstream>#include<cstdlib>#include"class.h"using namespace std;//const int N=500;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]<<"\t";}

0 0