/* * Copyright (c) 2015, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:冷基栋 * 完成日期:2015年 3 月 21 日 * 版 本 号:v1.0 */
问题
(5)用多文件的方式组织最后的程序。
main.cpp
#include <iostream> #include "salarys.h" using namespace std; int main() { Salary s; s.read_salarys(); s.add_salarys(666); s.sort_salarys(); s.write_salarys(); s.show_salarys(); }
salarys.cpp
#include <iostream> #include <cstdlib> #include <fstream> #include "salarys.h" using namespace std; const int N=500; void Salary::read_salarys() { int x=0,i=0; ifstream infile("salary.txt",ios::in); if(!infile) //测试是否成功打开 { cerr<<"open error!"<<endl; exit(1); } salarys=new double[1000]; while (infile>>salarys[i]) { i++; } number=i; infile.close(); } void Salary::write_salarys() { int i; ofstream outfile("sort.txt",ios::out); if(!outfile) //测试是否成功打开 { cerr<<"open error!"<<endl; exit(1); } for(i=0; i<number; ++i) { outfile<<salarys[i]<<endl; } outfile.close(); } void Salary::add_salarys(int a) { for (int i=0; i<number; i++) { salarys[i]+=a; } } void Salary::sort_salarys() { int a; for (int i=0; i<number-1; i++) for (int j=0; j<number-1; j++) { if(salarys[j]>salarys[j+1]) { a=salarys[i]; salarys[i]=salarys[i+1]; salarys[i+1]=a; } } } void Salary::show_salarys() { for (int i=0; i<number; i++) cout<<salarys[i]<<endl; }
salarys.h
#ifndef SALARYS_H_INCLUDED #define SALARYS_H_INCLUDED class Salary { private: double *salarys; int number; public: void read_salarys(); void write_salarys(); void add_salarys(int); void sort_salarys(); void show_salarys(); }; #endif // SALARYS_H_INCLUDED
运行结果:
知识点总结:
多文件练习。
学习心得:
好好学习 天天向上
时间: 2024-10-27 11:03:14