C++走向远洋——36(数组做数据成员,工资)
*/ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:salarly.cpp * 作者:常轩 * 微信公众号:Worldhello * 完成日期:2016年4月20日 * 版本号:V1.4 * 问题描述:对数组内的工资进行一系列的操作 * 程序输入:工资 * 程序输出:见运行结果 */ #include<iostream> using namespace std; class Salary { public: 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::set_salarys() { int x,i=0; cin>>x; while(x>0) { salarys[i]=x; ++i; cin>>x; } number=i; } 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=number-2;i>=0;i--) { for(j=0;j<=i;j++) { if(salarys[j]>salarys[j+i]) { 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]<<endl; } } int main() { Salary w; w.set_salarys( );//输入职工工资(输入-1标志着工资输入结束),工资保存到salary数组中,实际人数保存到number中; w.add_salarys(400); //给每个人涨x元工资 w.sort_salarys(); //对工资由大到小排序 w.show_salarys( ); return 0; }
运行结果:
心得:
和以前对数组处理的操作差不多,只不过是语法方面有些不同