小知識:
成員初始化列表:
只有建構函式可以使用這種方法,初始化列表由逗號分隔的初始化列表組成(前面帶冒號)它位於引數列表的右括號之後,函式體的左括號之前
初始化語法:class :: class (int n,int m): men1(n),men2(0),men3(n*m=2)
1. 這種格式只能用於建構函式
2.必須用這種格式初始化非靜態const 資料成員
3.必須用這種格式初始化引用資料成員
(資料成語員初始化的順序與他們在類宣告中的順序相同,與初始化器中的排列順序無關)
介面檔案**:
queue.h--inte***ce for a queue佇列介面
#ifndef queue_h
#define queue_h
class customer//顧客類
void set(long when);
long when() const
int ptime() const
};typedef customer item;//將customer重名為item
class queue//佇列類
;//定義鍊錶節點,使用了巢狀結構和類:struct 結構struct 節點的指標 next
enum ; //列舉限制佇列人數範圍
node * front;//佇列前指標
node * rear;//佇列尾指標
int items;
const int qsize;//佇列人數--常量
//先定義防止在public裡複製
queue(const queue &q ):qsize(0) {}; //表示在呼叫建構函式前初始化qsize為0
//成員初始化列表:初始化列表由逗號分隔的初始化列表組成(前面帶冒號)它位於引數列表的右括號之後,函式體的左括號之前
queue & operator =(const queue &q)
;public:
queue(int qs=q_size);
~queue();
bool isempty()const;
bool isfull()const;
int queuecout() const;
bool enqueue(const item &item);//尾部新增節點
bool dequeue(item &item);//頭部刪除節點
};#endif
函式實現**:
#include "queue.h"
#include //提供隨機函式rand()
queue::queue(int qs):qsize(qs)//初始化資料,非靜態的const 在此行初始化
queue::~queue()//析構函式釋放指標記憶體
}//判斷佇列是否為空
bool queue::isempty()const
//判斷佇列是否為滿
bool queue::isfull() const
//數佇列的人數
int queue::queuecout()const
//成員進隊
bool queue::enqueue(const item &item)
node *add=new node;//建立新的尾部節點
if(add==null)
return false;
add->item=item;//add->item 將引數 item複製到節點的資料部分
add->next=null;//add-next 設定為空,佇列最後乙個節點指向下個為null節點
items++;
if(front==null)
front=add;
else
rear->next=add;//將節點新增到佇列尾部
rear=add;//尾部指標指向新節點
return true;
}//刪除佇列成員
bool queue::dequeue(item &item)
//void customer::set(long when)
模擬測試**:
#include "queue.h"
#include #include #include const int min_pre_hr=60;//沒小時60分鐘
bool newcustomer(double x);
int main()
if(customers>0)
{ cout<<"customer accpeted: "<
C語言經典參考書籍
c程式語言 brian w.kernighan,dennis m.ritchie 編著 c語言的開山之作。c程式設計師應該人手一本。c語言參考手冊 c語言專家程式設計 peter van der linden 編著 更多c語言程式設計技巧可以看這本。實用c語言程式設計 steve oualline ...
報數 佇列模擬 C
有n個人圍成一圈,按順時針給他們編號為1 n。緊接著,指定編號為m的人開始報數,報數按順時針進行。報到d的人出列,下乙個人重新開始報數。按此規律,每次報到d的人都出列。要求同學程式設計求出出列的順序。輸入包括多組測試用例。對於每組用例,第一行是乙個整數n,表示人數。n 100。接下來n行是每個人的人...
C語言程式設計 查詢書籍
給定n本書的名稱和定價,本題要求編寫程式,查詢並輸出其中定價最高和最低的書的名稱和定價。輸入第一行給出正整數n 10 隨後給出n本書的資訊。每本書在一行中給出書名,即長度不超過30的字串,隨後一行中給出正實數 題目保證沒有同樣 的書。在一行中按照 書名 的格式先後輸出 最高和最低的書。保留2位小數。...