第八周项目一(2) 数组做数据成员(工资类 文件 指针)
来源:互联网 发布:安德烈波切利 知乎 编辑:程序博客网 时间:2024/04/29 23:42
/*copyright(c)2016.烟台大学计算机学院 * All rights reserved, * 文件名称:text.Cpp * 作者:舒文超 * 完成日期:2016年4月17日 * 版本号:vc++6.0 * * 问题描述: 手工输入工资?!太让人不能忍受了。现给出包含了不足500个职工工资的文件salary.txt, 增加一个成员函数,用于从文件中读取数据,再增加一个成员函数,将排序后的结果保存到 一个文件中编写main函数,测试你的扩充功能。 */#include <iostream>#include <fstream>#include <cstdlib>using namespace std;class Salary{public: void add_salarys(int x); //给每个人涨x元工资 void sort_salarys(); //对工资由大到小排序 void show_salarys(); //显示工资信息 void read_data( ); //读入数据 void write_data(); //写入数据private: double salarys[500]; //多人的工资 int number; //实际人数};void Salary::read_data( ){ int i; double *p; p=salarys; ifstream infile("salary.txt",ios::in); //以输入的方式打开文件 if(!infile) //测试是否成功打开 { cerr<<"File can not open!"<<endl; exit(0); } i=0; while(infile>>*(p+i)) i++; number=i; infile.close();}void Salary::write_data( ){ int i; double *p; p=salarys; ofstream outfile("salary_ordered.txt",ios::out); //以输入的方式打开文件 if(!outfile) //测试是否成功打开 { cerr<<"open error!"<<endl; exit(1); } for(i=0; i<number; ++i) { outfile<<*(p+i)<<endl; } outfile.close();}void Salary::add_salarys(int x){ int i; double *p; p=salarys; for(i=0;i<number;i++) *(p+i)+=x;}void Salary::sort_salarys(){ int i,j; double money; double *p; p=salarys; for(i=0;i<number-1;i++) { for(j=0;j<number-i-1;j++) { if(*(p+j)>*(p+j+1)) { money=*(p+j); *(p+j)=*(p+j+1); *(p+j+1)=money; } } }}void Salary::show_salarys(){ int i; double *p; p=salarys; for(i=0;i<number;i++) cout<<*(p+i)<<endl;}int main(){ Salary sa; sa.read_data(); sa.add_salarys(500); sa.sort_salarys(); sa.write_data(); sa.show_salarys(); return 0; return 0;}
0 0
- 第八周项目一(2) 数组做数据成员(工资类 文件 指针)
- 第八周项目一(1) 数组做数据成员(工资类2 指针做法)
- 第八周项目一(2) 数组做数据成员(工资类 数组 文件)
- 第八周项目1—数组做数据成员(工资类、数组)
- 第八周项目1—数组做数据成员(工资类 数组 文件)
- 第八周项目1—数组做数据成员(工资类 数组 文件)
- 第八周项目一(1) 数组作数据成员(工资类 1 常规数组做法)
- 第八周项目一-数组做数据成员(3)
- 第八周项目一(1)-数组做数据成员
- 第八周项目一(3)数组做数据成员
- 第八周项目(1)-数组做数据成员(工资)
- 第三周项目五 指针做数据成员(工资)
- 第八周项目1-数组做数据成员(2)
- 第八周项目1--数组做数据成员(2)
- 第8周项目1 数组做数据成员 工资类(2)
- 第八周项目1 数组做类的数据成员(3)(多文件)
- 第八周项目一-数组作数据成员(2)
- 第八周项目1数组做数据成员(1)
- JVM中Java对象的创建
- 对于vim盘自动补全{如何换行补全}的代码
- 程序代写_CPlusPlus小码农业务介绍
- “国产”Ubuntu Kylin(优麒麟)系统试用
- [疯狂Java]JDBC:事务管理、中间点、批量更新
- 第八周项目一(2) 数组做数据成员(工资类 文件 指针)
- ThreadPoolExecutor解析
- 第八周项目1 数组做类的数据成员(3)(多文件)
- 企业级hadoop-2.7.2集群的实施
- View事件体系(二)View的滑动
- diy数据库(三)--客户端框架的搭建
- 使用Android Studio 开发APP入门经验
- java约瑟夫环 -n围成一个圈,报数逢三退出 最后一个人初始号码
- 模板替换