學(xué)位論文-—數(shù)據(jù)結(jié)構(gòu)報(bào)告約瑟夫環(huán).doc

學(xué)位論文-—數(shù)據(jù)結(jié)構(gòu)報(bào)告約瑟夫環(huán).doc

ID:13554675

大小:383.00 KB

頁數(shù):22頁

時(shí)間:2018-07-23

學(xué)位論文-—數(shù)據(jù)結(jié)構(gòu)報(bào)告約瑟夫環(huán).doc_第1頁
學(xué)位論文-—數(shù)據(jù)結(jié)構(gòu)報(bào)告約瑟夫環(huán).doc_第2頁
學(xué)位論文-—數(shù)據(jù)結(jié)構(gòu)報(bào)告約瑟夫環(huán).doc_第3頁
學(xué)位論文-—數(shù)據(jù)結(jié)構(gòu)報(bào)告約瑟夫環(huán).doc_第4頁
學(xué)位論文-—數(shù)據(jù)結(jié)構(gòu)報(bào)告約瑟夫環(huán).doc_第5頁
資源描述:

《學(xué)位論文-—數(shù)據(jù)結(jié)構(gòu)報(bào)告約瑟夫環(huán).doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。

1、課程設(shè)計(jì)報(bào)告課程設(shè)計(jì)名稱:數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)課程設(shè)計(jì)題目:約瑟夫環(huán)院(系):電信學(xué)院專業(yè):計(jì)算機(jī)應(yīng)用科學(xué)目錄1課程設(shè)計(jì)介紹11.1課程設(shè)計(jì)內(nèi)容11.2課程設(shè)計(jì)要求12課程設(shè)計(jì)原理22.1課設(shè)題目粗略分析22.2原理圖介紹32.2.1功能模塊圖32.2.2流程圖分析43數(shù)據(jù)結(jié)構(gòu)分析73.1存儲(chǔ)結(jié)構(gòu)................................................................................73.2算法描述74調(diào)試與分析94.1調(diào)試過程94.2程序執(zhí)行過程10參考文獻(xiàn)15附錄(關(guān)鍵部分程序清單)16201課程設(shè)計(jì)介紹1

2、.1課程設(shè)計(jì)內(nèi)容設(shè)計(jì)程序,系統(tǒng)主要功能如下:編號(hào)為1,2,…,n的n個(gè)人按順時(shí)針方向圍坐一圈,每人持有一個(gè)密碼(正整數(shù))。開始任選一個(gè)正整數(shù)作為報(bào)數(shù)上限值m,從第一個(gè)人開始按順時(shí)針方向自1開始順序報(bào)數(shù),報(bào)到m時(shí)停止報(bào)數(shù)。報(bào)m的人出列,將他的密碼作為新的m值,從他在順時(shí)針方向上的下一個(gè)人開始重新從1報(bào)數(shù),如此下去,直至所有人全部出列為止。試設(shè)計(jì)一個(gè)程序求出出列順序。1.2課程設(shè)計(jì)要求1.參考相應(yīng)的資料,獨(dú)立完成課程設(shè)計(jì)任務(wù)書。2.交規(guī)范課程設(shè)計(jì)報(bào)告和軟件代碼。202課程設(shè)計(jì)原理2.1課設(shè)題目粗略分析根據(jù)課設(shè)題目要求,擬將整體程序分為四大模塊。此四個(gè)模塊相互獨(dú)立,沒有嵌套調(diào)用的情況

3、,以下是四個(gè)模塊的大體分析:1.main()函數(shù)是主要的控制函數(shù),main()函數(shù)主要負(fù)責(zé)存儲(chǔ)用戶輸入的基本數(shù)據(jù)以及調(diào)用其他子函數(shù)模塊,在main()函數(shù)中還存在一個(gè)比較小的函數(shù)模塊exit(0),該函數(shù)模塊負(fù)責(zé)終止程序運(yùn)行,另外還有兩個(gè)子函數(shù)模塊,分別是random()函數(shù)模塊與solid()函數(shù)模塊,這兩個(gè)函數(shù)模塊分別各自負(fù)責(zé)自己所要處理的數(shù)據(jù)以及輸出功能;2.在程序運(yùn)行之后,在程序主界面出現(xiàn)之后,當(dāng)用戶自己輸入了自己想要實(shí)現(xiàn)的功能模塊所在的數(shù)字選項(xiàng)后,立即進(jìn)入主函數(shù)模塊之中,當(dāng)用戶輸入了所有的必要數(shù)據(jù)之后,按照用戶選定的數(shù)字選項(xiàng)所要實(shí)現(xiàn)的功能調(diào)用相應(yīng)的子函數(shù);3.如果用戶

4、選擇的是系統(tǒng)隨機(jī)產(chǎn)生密碼的選項(xiàng),則main()函數(shù)就調(diào)用random()子函數(shù)模塊,在random()函數(shù)模塊中,將會(huì)隨機(jī)產(chǎn)生各個(gè)參與者的密碼,并且同時(shí)建立鏈表來存儲(chǔ)、處理這些數(shù)據(jù),在完成了所有的操作之后,random()函數(shù)就將輸出結(jié)果,反之,如果用戶選擇的是用戶自己輸入密碼的選項(xiàng),則main()函數(shù)就調(diào)用solid()函數(shù)模塊,在solid()函數(shù)模塊中,將會(huì)提醒用戶自己一個(gè)個(gè)的輸入每個(gè)參與者的密碼,與此同時(shí)建立鏈表來存儲(chǔ)、處理這些數(shù)據(jù),在完成了所有的操作之后,solid()函數(shù)就將輸出結(jié)果。202.2原理圖介紹2.2.1功能模塊圖用戶輸入數(shù)據(jù)random()函數(shù)模塊來隨機(jī)

5、產(chǎn)生參與者的密碼,并且存儲(chǔ)、處理這些數(shù)據(jù),之后輸出它們exit(0)函數(shù)負(fù)責(zé)終止程序運(yùn)行solid()函數(shù)模塊來提示用戶輸入密碼并且存儲(chǔ)、處理這些數(shù)據(jù),之后輸出結(jié)果根據(jù)程序啟動(dòng)時(shí)用戶所選的數(shù)字選項(xiàng),main()函數(shù)來調(diào)用相應(yīng)的子函數(shù)模塊圖2.1功能模塊圖202.2.2流程圖分析1.如圖2.2,random()函數(shù)的執(zhí)行過程如下;開始輸入第一個(gè)報(bào)的數(shù)key及系統(tǒng)隨機(jī)產(chǎn)生各個(gè)參與者的密碼n==0報(bào)數(shù)過程N(yùn)Y輸出出列者的編號(hào)及密碼結(jié)束n--圖2.2random()函數(shù)流程圖202.如圖2.3,solid()函數(shù)的執(zhí)行過程如下;開始用戶輸入各個(gè)參與者的密碼及第一個(gè)要報(bào)的數(shù)keyn==0

6、N報(bào)數(shù)過程Y輸出出列者的編號(hào)及密碼n--結(jié)束圖2.3solid()函數(shù)流程圖203.如圖2.4,main()函數(shù)的執(zhí)行過程如下。開始輸入總?cè)藬?shù)n創(chuàng)建并初始化n個(gè)節(jié)點(diǎn)輸入第一個(gè)要報(bào)的數(shù)keyn==0N報(bào)數(shù)過程Y輸出出列者的編號(hào)及密碼結(jié)束n--圖2.4main()函數(shù)流程圖203數(shù)據(jù)結(jié)構(gòu)分析3.1存儲(chǔ)結(jié)構(gòu)numcodenext圖3.1數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)3.2算法描述1.用戶輸入數(shù)據(jù);while(scanf("%d",&p)!=EOF){if(p==1)random();elseif(p==2)solid();elseexit(0);printf("********************

7、*****歡迎進(jìn)入約瑟夫環(huán)問題求解系統(tǒng)*************************");printf("1.按照系統(tǒng)隨機(jī)給出的密碼進(jìn)行2.按照自己輸入的密碼進(jìn)行3.退出該系統(tǒng)");printf("********************請(qǐng)輸入您要實(shí)現(xiàn)的功能模塊所在的數(shù)字選項(xiàng)!********************");}2.random()函數(shù)隨機(jī)產(chǎn)生各個(gè)參與者的密碼,用戶在此函數(shù)中輸入第一個(gè)要報(bào)的數(shù),此函數(shù)之后會(huì)排好各個(gè)參與者的出列順序;or(i=1;i<=

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。