第八周项目1—数组做数据成员(工资类 数组 文件)
来源:互联网 发布:淘宝已购买的宝贝 编辑:程序博客网 时间:2024/05/15 12:42
/**Copyright(c) 2016.烟台大学计算机与控制工程学院*ALL rights reserved.*文件名称:test.cpp*作者:杨驰*完成日期:2016年4月19日*问题描述:手工输入工资?!太让人不能忍受了。现给出包含了不足500个职工工资的 文件salary.txt(下载),增加一个成员函数,用于从文件中读出数据,再 增加一个成员函数,将排序后结果保存到一个文件中。编写main函数,测试 你扩充的功能。 */#include <iostream>#include<fstream>#include<cstdlib>using namespace std;class Salary{public: void read_data();//读取文件 void write_data();//保存文件 void set_salarys();//输入职工工资(输入-1标志着工资输入结束),工资保存到salary数组中,实际人数保存到number中; void add_salarys(int x); //给每个人涨x元工资 void sort_salarys(); //对工资由大到小排序 void show_salarys(); //显示工资信息private: double salarys[50]; //多人的工资 int number; //实际人数};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::set_salarys(){ cout<<"请输入员工的工资:"<<endl; int i=0; double sal; cin>>sal; while(sal!=-1) { salarys[i]=sal;//工资保存到数组数据成员中 i++; cin>>sal; } number=i;//number是数据成员,记录下职工人数}void Salary::add_salarys(int x) //给每个人涨x元工资{ int i; for(i=0;i<number;i++) salarys[i]+=x;}void Salary::sort_salarys()//对工资由大到小排序{ int i,j; double temp; for(i=0;i<number;i++) for(j=0;j<number-1-i;j++) if(salarys[j]<salarys[j+1]) { temp=salarys[j]; salarys[j]=salarys[j+1]; salarys[j+1]=temp; }}void Salary::show_salarys() //显示工资信息{ int i; for(i=0;i<number;i++) cout<<salarys[i]<<" ";}int main(){ Salary sala; sala.read_data(); sala.set_salarys(); sala.add_salarys(500); sala.sort_salarys(); sala.show_salarys(); sala.write_data(); return 0;}
0 0
- 第八周项目1—数组做数据成员(工资类 数组 文件)
- 第八周项目1—数组做数据成员(工资类 数组 文件)
- 第八周项目1—数组做数据成员(工资类、数组)
- 第八周项目一(2) 数组做数据成员(工资类 数组 文件)
- 第八周项目一(2) 数组做数据成员(工资类 文件 指针)
- 第八周项目一(1) 数组做数据成员(工资类2 指针做法)
- 第八周项目(1)-数组做数据成员(工资)
- 第八周项目一(1) 数组作数据成员(工资类 1 常规数组做法)
- 第八周项目1 数组做类的数据成员(3)(多文件)
- 第八周项目1—数组做数据成员(多文件)
- 第八周项目1—数组做数据成员(多文件)
- 第八周项目1数组做数据成员(1)
- 第八周项目1-数组做数据成员(1)
- 第八周项目1:数组做数据成员(1)
- 第八周项目1-数组做数据成员(2)
- 第八周项目1-数组做数据成员(3)
- 第八周项目1 数组做数据成员
- 第八周项目1-数组做数据成员
- 字符编码
- NSInvocation传递多个参数
- Java中死锁的检测
- SUID、SGID详解
- SQL自定义函数 字符串截取 递归查询 以及一个小例子
- 第八周项目1—数组做数据成员(工资类 数组 文件)
- DNS 查找失败,因此找不到 ******* 的服务器
- Codeforces Round #320 (Div. 2) [Bayan Thanks-Round]
- Android-多种进度条的使用方法
- linux grep命令详解
- SERVLET 学习笔记
- VIM_Pulgin
- 动态规划之n个元素出栈顺序种数
- update select 语句和merge into语句