第3周專案5-陣列作資料成員(2)
*
* Copyright (c) 2015, 煙臺大學計算機學院
* All rights reserved.
* 檔名稱:test.cpp
* 作 者:劉暢
* 完成日期:2015年 3 月 21 日
* 版 本 號:v1.0
*
* 問題描述: 閱讀教材P255例8.4,注意到類中的資料成員可以是陣列。設計一個工資類(Salary),其中類的資料成員如下:
class Salary
{
private:
double salarys[50]; //多人的工資
int number; //實際人數
};
要設計的成員函式有:
void set_salarys( ):輸入職工工資(輸入-1標誌著工資輸入結束),工資儲存到salary陣列中,實際人數儲存到number中;
void add_salarys(int x):給每個人漲x元工資
void sort_salarys():對工資排序
void show_salarys( ):顯示工資資訊
(2)用salary[50]有限制,實際人數少時,會浪費空間,人數多了,無法完成任務。在main()中先輸入職工人數,作為引數傳遞給輸入職工工資的成員函式,然後利用動態分配記憶體的機制,開闢一個大小正好的連續空間,完成上面的工作。
* 輸入描述:NULL;
* 程式輸出:按要求輸出。
程式碼如下:
#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; //多人的工資
int number; //實際人數
};
int main()
{
Salary s;
s.set_salarys( );
s.show_salarys( );
s.add_salarys(500);
s.sort_salarys( );
s.show_salarys( );
return 0;
}
void Salary::set_salarys()
{
int i;
double money;
cout<<"請輸入職工人數:";
cin>>number;
salarys=new double[number];
cout<<"請輸入職工的工資:";
for (i=0;i<number;i++)
{
cin>>money;
salarys[i]=money;
}
}
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]<<endl;
}
執行結果:
相關文章
- 第3周專案5-陣列作資料成員(1)陣列
- 第3周專案5-陣列作資料成員(3)陣列
- 第3周專案5-陣列作資料成員(4)陣列
- 第3周專案5-陣列作資料成員(5)陣列
- 第14周-閱讀專案5-字串流物件字串物件
- 陣列作為形參陣列
- 領導員工成為專案管理者2(轉)專案管理
- 專案小組成員介紹
- 普通專案組成員對專案的作用(轉)
- 專訪Eclipse Europa 專案開發成員Eclipse
- 第3周課後實踐·閱讀程式(2)-利用指標訪問私有資料成員指標
- 陣列作為函式引數陣列函式
- 靜態資料成員和靜態成員函式函式
- 專案經理之專案經理與專案成員的實戰指南
- 寒假專案5-讀懂“共同體"
- 第2周專案2-長方柱類
- SQLBulkOperations及陣列作引數的SQLSQL陣列
- 第10章 基因資料分析和BDG專案
- MDX中使用成員屬性-資料庫專欄,SQL Server資料庫SQLServer
- C++ 靜態資料成員C++
- 第2周專案3-時間類(2)
- 前谷歌員工推出類Spanner資料庫專案谷歌資料庫
- 雲棲乾貨回顧 | 行業頂級NoSQL成員坐陣,NoSQL資料庫專場重點解析!行業SQL資料庫
- 領導員工成為專案管理者(轉)專案管理
- 對聯合專案組成員的考評(轉)
- 軟體專案組成員的激勵措施(轉)
- 如何成為資料庫管理員(DBA)?資料庫
- cosnt成員資料的初始化
- 物件資料成員的初始值物件
- 《JavaScript資料結構與演算法》筆記——第2章 陣列JavaScript資料結構演算法筆記陣列
- 成為資料科學家的入門專案資料科學
- 推動專案管理的陣痛(2)(轉)專案管理
- 第2周專案-課後實踐·閱讀程式(2)
- 如何利用六西格瑪有效管理專案團隊成員?
- C++ 成員資料指標成員函式指標簡單測試C++指標函式
- 資料結構2——陣列資料結構陣列
- 有幸成為Oracle 使用者組年輕專家專案一員Oracle
- Spark2 載入儲存檔案,資料檔案轉換成資料框dataframeSpark