實驗九 類與物件 約瑟夫問題 詳細注釋

2021-10-12 17:45:57 字數 988 閱讀 4457

問題描述

n 個人(編號從1~n)圍成一圈,從第 k 個人開始數數,數到 m 的人出圈,然後繼續從未出列的下乙個人開始數數,數到 m 的人出圈,重複上述過程,直到圈中僅剩下一人。

【輸入形式】

輸入為一行三個正整數,n、k、m。

【輸出形式】

輸出為乙個正整數,表示最後剩下的人的編號。

【樣例輸入】

100 1 5

【樣例輸出】

47【答題提醒】本題為程式片段題,你需要將程式補充完整。題目為類與物件的應用,構造乙個迴圈鍊錶,你需要完全理解本程式的設計思想。

#include

using

namespace std;

class

person

void

setnext

(person *p)

intgetno()

person *

getnext()

};class

cycle

prv-

>

setnext

(first)

;//最後乙個人指向最初的人,成環了

}int

getinqueue()

void

cnt(

)/* 根據題目要求數數,確定出列的人,將該人從圈中剔除 */

inqueue--

;//人數減1

prv-

>

setnext

(f->

getnext()

);//踢他

start=f-

>

getnext()

;delete f;

//好習慣

} person *

getstart()

~cycle()

//好習慣};

intmain()

類與物件 實驗二

實驗目的 1 掌握類的建構函式和析構函式的概念和使用方法 2 掌握物件陣列 物件指標的定義和使用方法 3 掌握new和delete的使用方法 實驗內容 1 設計描述平面座標上的點cpoint類,該類滿足下述要求 具有x,y座標資訊 具有帶預設形參值的建構函式,引數分別用於初始化x和y座標資訊 具有獲...

實驗1 類與物件

宣告乙個cpu類,包含等級 rank 頻率 frequency 電壓 voltage 等屬性,有兩個公有成員函式run stop。其中,rank為列舉型別cpu rank,宣告為enum cpu rank p1 1,p2,p3,p4,p5,p6,p7 frequency為單位是mhz的整型數,vol...

C 實驗類與物件

桂 林 理 工 大 學 實 驗 報 告 實驗名稱 類與物件 日期 2018年 04 月17 日 一 實驗目的 1 掌握類的定義和使用。2 掌握類的物件的宣告。3 複習具有不同訪問屬性的成員的訪問方式。4 觀察建構函式和析構函式的執行過程。5 使用vc 的debug除錯功能觀察程式流程,跟蹤觀察類的建...