第三周项目五——数组做数据成员(5)
来源:互联网 发布:ubuntu安装搜狗拼音 编辑:程序博客网 时间:2024/06/05 03:37
(5)用多文件的方式组织最后的程序。参考解答:
(1)main.cpp 用于定义main()函数
/* All rights reserved. * 文件名称:test.cpp * 作者:陈丹妮 * 完成日期:2015年 3 月 29 日 * 版 本 号:v1.0 * 问题描述:(3)手工输入工资?!太让人不能忍受了。现给出包含了不足500个职工工资的文件salary.txt(下载),从文件中读数据,完成上面的工作。 * 输入描述: * 输出结果: */#include <iostream>#include "salary.h"#include <fstream>#include <cstdlib>using namespace std;int main(){ Salary s; s.read_data(); s.add_salarys(500); s.sort_salarys(); s.write_data(); s.show_salarys(); return 0;}
(2)头文件: salary.h,头文件,声明类,定义内置成员函数
#ifndef SALARY_H_INCLUDED#define SALARY_H_INCLUDEDconst int N=500;class Salary{private: double salarys[N];//用数组保存工资 int number;//实际的人数public: void read_data(); void write_data(); void add_salarys(int x);//给每个人涨工资 void sort_salarys();//对工资排序 void show_salarys();//显示工资的信息};#endif // SALARY_H_INCLUDED
(3) salary.cpp,用于定义Salary中其他成员函数
#include <iostream>#include "salary.h"#include <fstream>#include <cstdlib>using namespace std;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::write_data(){ int i; ofstream outfile("salary_ordered.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 x){ int i; for(i=0; i<number; i++) { salarys[i]+=x; }}void Salary::sort_salarys(){ int i,j; double t; for(i=0; i<number-1; i++) for(j=0; j<number-1-i; j++) { if(salarys[j+1]>salarys[j]) { t=salarys[j]; salarys[j]=salarys[j+1]; salarys[j+1]=t; } }}void Salary::show_salarys(){ int i; cout<<"输出增加工资后的工资数据排序:"<<endl; for(i=0; i<number; i++) { cout<<i+1<<" "<<salarys[i]<<'\t'; }}
心得体会:多文件组织已掌握,又建成一小截的管道,继续加油!
0 0
- 第三周项目五——数组做数据成员(5)
- 第三周 项目五-数组做数据成员(一)
- 第三周 项目五-数组做数据成员(二)
- 第三周项目五——数组做数据成员(3)(4)
- 第三周项目五——数组做数据成员(1)
- 第三周项目五—数组做数据成员(2)
- 第三周项目5——数组做数据成员
- 2015年第三周项目五:数组做数据成员(5)
- 第三周项目五 数组做数据成员
- 2015年第三周项目五:数组做数据成员
- 第三周 项目五-数组做数据成员(五)文件操作-多文件方式
- 第三周 项目五--数组作数据成员(5)
- 第三周项目五数组作数据成员(5)
- 第三周 项目5-数组做数据成员(1)
- 第三周 项目5-数组做数据成员(2)
- 第三周 项目5-数组做数据成员(3)
- 第三周 项目5-数组做数据成员(4)
- 第三周 项目五-数组做数据成员(三)文件操作-数组
- Ubuntu下Sublime Text 2的安装
- 基本Kmeans算法介绍及其实现
- css 知识点小结
- linux设备驱动第一篇:基础知识点
- ios关于通讯录的那些事儿
- 第三周项目五——数组做数据成员(5)
- 简单的函数指针应用(linux)
- 关于cocos2d-x项目移植到android平台的时候明明已经将资源复制到assets还是出现的assets is nullptr的问题
- golang defer
- [LeetCode 77]Combinations
- Java RMI之HelloWorld篇
- JAX WS服务器端简介
- 第三周项目4考了语文数学的学生
- 在一些字符串中找特定字符