#include <iostream> using namespace std; class Salary//工资类 { public: void set_salarys( );//设置工资 void add_salarys(int x);//增加工资 void sort_salarys();//根据工资由大到小排序 void show_salarys( );//显示工人的工资 void delete_space();//释放内存空间 private: double *salarys;//工资 int number; //实际人数 }; //设置工资 void Salary::set_salarys( ) { cout<<"请输入工人的数量:"; cin>>number; //动态内存分配 salarys = new double[number]; int x; cout<<"请输入工人的工资:"; cin>>x; for(int i=0; i<number; i++) { salarys[i] = i+x; } } //增加工资 void Salary::add_salarys(int x) { for(int i=0; i<number; i++) { salarys[i] += x; } } //根据工资由大到小排序 void Salary::sort_salarys() { int temp; for(int i=0; i<number-1; i++) { for(int j=0; j<number-i; j++) { if(salarys[j] < salarys[j+1]) { temp = salarys[j]; salarys[j] = salarys[j+1]; salarys[j+1] = temp; } } } } //显示工人的工资 void Salary::show_salarys( ) { for(int i=0; i<number; i++) { cout<<"第"<<i+1<<"个工人的工资是"<<salarys[i]<<endl; } } //释放内存空间 void Salary::delete_space() { delete(salarys); } int main( ) { Salary s; s.set_salarys( ); s.add_salarys(100); s.sort_salarys(); s.show_salarys( ); s.delete_space(); return 0; }
执行结果:
时间: 2024-10-11 07:37:22