第二周 项目五:数组作数据成员(5)
来源:互联网 发布:足球彩票哪个软件好 编辑:程序博客网 时间:2024/05/15 06:58
问题及代码:
main.cpp
/** Copyright (c) 2015, 烟台大学计算机学院* All rights reserved.* 文件名称:lei.cpp* 作 者:李楠* 完成日期:2015年3月19日* 版 本 号:v1.0** 问题描述:阅读教材P255例8.4,注意到类中的数据成员可以是数组。设计一个工资类(Salary),其中类的数据成员如下:要设计的成员函数有:•void set_salarys( ):输入职工工资(输入-1标志着工资输入结束),工资保存到salary数组中,实际人数保存到number中;•void add_salarys(int x):给每个人涨x元工资•void sort_salarys():对工资排序•void show_salarys( ):显示工资信息* 输入描述:(5)用多文件的方式组织最后的程序。* 程序输出:略*/#include <iostream>#include "salary.h"using namespace std;int main( ){ Salary sal; sal.read_data( ); sal.add_salarys(500); sal.sort_salarys(); sal.salary_data( ); sal.show_salarys( ); return 0;}
salary.h
#ifndef SALARY_H_INCLUDED#define SALARY_H_INCLUDED#include "salary.h"class Salary{public: void read_data(); void salary_data(); void add_salarys(int x); void sort_salarys(); void show_salarys();private: double salarys[500]; int number; //人数};#endif // SALARY_H_INCLUDED
sal.cpp
#include <iostream>
#include <fstream>//infile的头文件
#include <cstdlib>//exit()的头文件
#include "salary.h"
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::salary_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-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";
}
运行结果:
知识点总结:
运用上刚学的多文件组织的知识,还是不难的
学习心得:
熟能生巧,这几天写了两三个多文件的项目,感觉以后就不再害怕使用多文件了
- 第二周 项目五:数组作数据成员(5)
- 第二周 项目五:数组作数据成员(1)
- 第二周 项目五:数组作数据成员(2)
- 第二周 项目五:数组作数据成员(3)
- 第二周 项目五:数组作数据成员(4)
- 第二周项目 5 数组作数据成员(5)
- 第二周项目 5 数组作数据成员(1)
- 第二周项目 5 数组作数据成员(2)
- 第三周 项目五--数组作数据成员(5)
- 第三周项目五数组作数据成员(5)
- 数组作数据成员(项目五)
- 第三周项目五:数组作数据成员(一)
- 第三周项目五:数组作数据成员(二)
- 第三周项目五:数组作数据成员(三)
- 第三周 项目五--数组作数据成员(1)
- 第三周 项目五--数组作数据成员(2)
- 第三周 项目五--数组作数据成员(3)
- 第三周 项目五--数组作数据成员(4)
- AutoResetEvent
- 【软件使用】GitHub使用教程for Eclipse
- Jquery和JavaScript取得iframe中元素的几种方法
- 安卓DP、PX、SP相互转化代码
- 1000到2000年的闰年
- 第二周 项目五:数组作数据成员(5)
- 20、网络播放器
- Android开发_双缓冲
- 高斯分布(Gaussian distribution)及其概率密度函数PDF和累积分布函数CDF
- 调用C# Thread.Start()方法
- 新的开始
- 字符设备实验之按键异步通知
- 搭建开发环境(1)——安装Intellij
- android rtsp花屏处理