版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、莁袈芀芁蝿袇罿薆蚅袆肂荿薁裊膄薄蕆襖芆莇螆羃羆膀螞羃肈莆薈羂膁膈蒄羈羀莄蒀羀肅芇蝿罿膅蒂蚄羈芇芅薀羇羇蒀蒆肇聿芃螅肆膂葿蟻肅芄節(jié)薇肄肅蕆薃蟻膆莀葿蝕羋薅螈蠆羈莈蚄蚈肀薄薀蚇膂莆蒆螆芅腿螄螅羄蒞螀螅膇膈蚆螄艿蒃薂螃罿芆蒈螂肁蒁螇螁膃芄蚃袀芆蒀蕿衿羅節(jié)蒅衿肇蒈莁袈芀芁蝿袇罿薆蚅袆肂荿薁裊膄薄蕆襖芆莇螆羃羆膀螞羃肈莆薈羂膁膈蒄羈羀莄蒀羀肅芇蝿罿膅蒂蚄羈芇芅薀羇羇蒀蒆肇聿芃螅肆膂葿蟻肅芄節(jié)薇肄肅蕆薃蟻膆莀葿蝕羋薅螈蠆羈莈蚄蚈肀薄薀蚇膂莆蒆螆芅腿螄螅羄蒞螀螅膇膈蚆螄艿蒃薂螃罿芆蒈螂肁蒁螇螁膃芄蚃袀芆蒀蕿衿羅節(jié)蒅衿肇蒈莁袈芀芁蝿袇罿薆蚅袆肂荿薁裊膄薄蕆襖芆莇螆羃羆膀螞羃肈莆薈羂膁膈蒄羈羀莄蒀羀肅芇蝿罿膅蒂
2、蚄羈芇芅薀羇羇蒀蒆肇聿芃螅肆膂葿蟻肅芄節(jié)薇肄肅蕆薃蟻膆莀葿蝕羋薅螈蠆羈莈蚄蚈肀薄薀蚇膂莆蒆螆芅腿螄螅羄蒞螀螅膇膈蚆螄艿蒃薂螃罿芆蒈螂肁蒁螇螁膃芄蚃袀芆蒀蕿衿羅節(jié)蒅衿肇蒈莁袈芀芁蝿袇罿薆蚅袆肂荿薁裊膄薄蕆襖芆莇螆羃羆膀螞羃肈莆薈羂膁膈蒄羈羀莄蒀羀肅芇蝿罿膅蒂蚄羈芇芅薀羇羇蒀蒆肇聿芃螅肆膂葿蟻肅芄節(jié)薇肄肅蕆薃蟻膆莀葿蝕羋薅螈蠆羈莈蚄蚈肀薄薀蚇膂莆蒆螆芅腿螄螅羄蒞螀螅膇膈蚆螄艿蒃薂螃罿芆蒈螂肁蒁螇螁膃芄蚃袀芆蒀蕿衿羅節(jié)蒅衿肇蒈莁袈芀芁蝿袇罿薆蚅袆肂荿薁裊膄薄蕆襖芆莇螆羃羆膀螞羃肈莆薈羂膁膈蒄羈羀莄蒀羀肅芇蝿罿膅蒂蚄羈芇芅薀羇羇蒀蒆肇聿芃螅肆膂葿蟻肅芄節(jié)薇肄肅蕆薃蟻膆莀葿蝕羋薅螈蠆羈莈蚄蚈肀薄薀蚇膂莆
3、蒆螆芅腿螄螅羄蒞螀螅膇膈蚆螄艿蒃薂螃罿芆蒈螂肁蒁螇螁膃芄蚃袀芆蒀蕿衿羅節(jié)蒅衿肇蒈莁袈芀芁蝿袇罿薆蚅袆肂荿薁裊膄薄蕆襖芆莇螆羃羆膀螞羃肈莆薈羂膁膈蒄羈羀莄蒀羀肅芇蝿罿膅蒂蚄羈芇芅薀羇羇蒀蒆肇聿芃螅肆膂葿蟻肅芄節(jié)薇肄肅蕆薃蟻膆莀葿蝕羋薅螈蠆羈莈蚄蚈肀薄薀蚇膂莆蒆螆芅腿莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈
4、莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂
5、膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇
6、莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄
7、芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈
8、肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂
9、羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆
10、腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁
11、莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅羈蒅袇袈莇蒄薇膄芃蒃蠆羆腿蒂螁膂肅蒂襖羅莃蒁薃螇艿薀蚆羃膅蕿螈螆肁薈蒈羈肇薇蝕螄莆薇螂聿節(jié)薆裊袂膈薅薄肈肄薄蚇袁莂蚃蝿肆羋螞袁衿膄蟻薁肄膀羋螃羇肆芇裊膃蒞芆薅羅芁芅蚇膁膇芄螀羄肅莄袂螇莂莃薂羂羋莂蚄螅芄莁袆肀膀莀薆袃肆荿蚈聿莄莈螁袁芀莈袃肇膆蕆薃袀肂蒆蚅肅 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)停車場管理系統(tǒng)班級(jí):* 指導(dǎo)教師:*學(xué)號(hào):* 姓名:*小組成員:* * *完成日期:2009年3月6日成績:_目 錄課程設(shè)計(jì)目的1、 通過課程設(shè)計(jì),加深對(duì)數(shù)據(jù)結(jié)構(gòu)這一課程所學(xué)內(nèi)容的進(jìn)
12、一步理解與鞏固。2、 通過課程設(shè)計(jì),加深對(duì)結(jié)構(gòu)化設(shè)計(jì)思想的理解,能對(duì)系統(tǒng)功能進(jìn)行分析,并設(shè)計(jì)合理的模塊化結(jié)構(gòu)。3、 通過課程設(shè)計(jì),提高程序開發(fā)功能,能運(yùn)用合理的控制流程編寫清晰高效的程序。4、 通過課程設(shè)計(jì),訓(xùn)練c程序調(diào)試能力,能將一個(gè)中小型各級(jí)組織系統(tǒng)聯(lián)調(diào)通過。5、 通過課程設(shè)計(jì),開發(fā)一個(gè)中小型系統(tǒng),掌握系統(tǒng)研發(fā)全過程。6、 通話課程設(shè)計(jì),培養(yǎng)分析問題、解決實(shí)際問題的能力。二、課程設(shè)計(jì)內(nèi)容 問題描述:設(shè)有一個(gè)可以停放n輛汽車的狹長停車場,它只有一個(gè)大門可以供車輛進(jìn)出。車輛按到達(dá)停車場時(shí)間的早晚依次從停車場最里面向大門口處停放(最先到達(dá)的第一輛車放在停車場的最里面)。如果停車場已放滿n輛車,則
13、后來的車輛只能在停車場大門外的便道上等待,一旦停車場內(nèi)有車開走,則排以便道上的第一輛車就進(jìn)入停車場。停車場內(nèi)如有某輛車要開走,在它之后進(jìn)入停車場的車都必須先退出停車場為它讓路,待其開出停車場后,這些輛再依原來的次序進(jìn)場。每輛車在離開停車場時(shí),都應(yīng)根據(jù)它在停車場內(nèi)停留的時(shí)間長短交費(fèi)。如果停留在便道上的車未進(jìn)停車場時(shí),允許其離去,不收停車費(fèi),并且仍然保持在便道上等待的車輛的次序。編制一程序模擬該停車場的管理。 基本要求:要求程序輸出每輛車到達(dá)后的停車位置(停車場或便道上),以及某輛車離開停車場應(yīng)交納的費(fèi)用和它在停車場內(nèi)停留的時(shí)間。 實(shí)現(xiàn)提示:汽車的模擬輸入信息格式可以是:(到達(dá)/離去,汽車牌照號(hào)碼
14、,到達(dá)/離去的時(shí)刻)。例如,(a,1,5)表示1號(hào)牌照車在5這個(gè)時(shí)刻到達(dá),而(d,5,20)表示5號(hào)牌照車在20這個(gè)時(shí)刻離去。整個(gè)程序可以在輸入信息為(e,0,0)時(shí)結(jié)束。本題可用棧和隊(duì)列來實(shí)現(xiàn)。三、概要設(shè)計(jì)1、設(shè)計(jì)思想此停車場管理系統(tǒng)是在一個(gè)狹長的通道上的,而且只有一個(gè)大門可以供車輛進(jìn)出,并且要實(shí)現(xiàn)停車場內(nèi)某輛車要離開時(shí),在它之后進(jìn)入停車場的車都必須先退出停車場為它讓路,待其開出停車場后,這些輛再依原來的次序進(jìn)場的功能,就可以設(shè)計(jì)兩個(gè)堆棧,其中一個(gè)堆棧用來模擬停車場,另一個(gè)堆棧用來模擬臨時(shí)停車場,該臨時(shí)停車場用來存放當(dāng)有車輛離開時(shí),原來停車場內(nèi)為其讓路的車輛。至于當(dāng)停車場已滿時(shí),需要停放車輛
15、的通道可以用一個(gè)鏈隊(duì)列來實(shí)現(xiàn)。當(dāng)停車場內(nèi)開走一輛車時(shí),通道上便有一輛車進(jìn)入停車場,此時(shí)只需要改變通道上車輛結(jié)點(diǎn)的連接方式就可以了,使通道上第一輛車進(jìn)入停車場這個(gè)堆棧,并且使通道上原來的第二輛車成為通道上的第一輛車,此時(shí)只需將模擬通道的鏈隊(duì)列的頭結(jié)點(diǎn)連到原來的第二輛車上就可以了。2、實(shí)現(xiàn)方法對(duì)于此停車場管理系統(tǒng)的實(shí)現(xiàn),就是用兩個(gè)堆棧來分別模擬停車場以及停車場內(nèi)車輛為其它車輛讓路時(shí)退出停車的臨時(shí)停放地點(diǎn)。至于通道上車輛的停放則用一個(gè)循環(huán)隊(duì)列來實(shí)現(xiàn),此時(shí),通道上車輛的離開或者進(jìn)入停車場只需改變此鏈隊(duì)列上的結(jié)點(diǎn)而已。對(duì)于要對(duì)停車場內(nèi)的車輛根據(jù)其停放時(shí)間收取相應(yīng)的停車費(fèi)用,可以記錄下車輛進(jìn)入以及離開停車
16、場的時(shí)間,再用時(shí)間差乘以相應(yīng)的單價(jià)并且打印出最后的費(fèi)用就可以實(shí)現(xiàn)了。3、主要模塊此停車場管理系統(tǒng),主要分為以下若干模塊:首先定義用來模擬停車場的堆棧以及用來模擬通道的鏈隊(duì)列為全局變量,然后編寫主函數(shù),在此主函數(shù)中實(shí)現(xiàn)對(duì)其它各個(gè)模塊的調(diào)用。在主函數(shù)中首先調(diào)用option()函數(shù),出現(xiàn)歡迎用戶使用的主界面,然后提示用戶進(jìn)入此停車場管理系統(tǒng)后,再出現(xiàn)一個(gè)供用戶選擇的界面,在用戶的選擇過程中,程序又分別調(diào)用車輛的到達(dá)、車輛的離開、停車場內(nèi)停放車輛的信息以及退出程序這四個(gè)函數(shù)模塊。其中,在車輛的離開那個(gè)模塊函數(shù)中又調(diào)用了打印離開車輛信息的函數(shù),在停車場內(nèi)停放車輛信息的那個(gè)模塊函數(shù)中,又分別調(diào)用了顯示停車
17、場上車輛信息的函數(shù)以及顯示便道上車輛信息的函數(shù)。最后,從調(diào)鼐的這四個(gè)函數(shù)中回到主函數(shù)結(jié)束整個(gè)程序的運(yùn)行。在以上各個(gè)模塊中,出現(xiàn)的調(diào)用的函數(shù)為:void initstack(seqstackcar *s);int initqueue(linkqueuecar *q);option();int arrival(seqstackcar *enter,linkqueuecar *w);void leave(seqstackcar *enter,seqstackcar *temp,linkqueuecar *w);void print(carnode *p);void list(seqstackcar
18、s,linkqueuecar w);void list1(seqstackcar *s);void list2(linkqueuecar *w);4、模塊間關(guān)系四、調(diào)試分析(1) 調(diào)試過程中的主要問題由于此停車場管理系統(tǒng)是分模塊設(shè)計(jì)的,而且在程序的實(shí)現(xiàn)過程中又使用了清屏函數(shù),所以,運(yùn)行時(shí)用戶選擇任務(wù)并且執(zhí)行完任務(wù)后,又會(huì)回到供用戶選擇功能的主界面,因此整個(gè)程序從整體上來講結(jié)構(gòu)清晰,使用方便。本程序的調(diào)試運(yùn)行,總體上情況良好,但中間也出現(xiàn)了一些小問題。其中比較有代表性的主要問題有:當(dāng)停車場已經(jīng)達(dá)到最大容量,但仍有車輛進(jìn)入停車場的時(shí)候,運(yùn)行界面上沒有出現(xiàn)或者說出現(xiàn)了但又跳掉了“停車場已滿,該車輛需
19、在便道上等待!”的提示信息。我們小組成員經(jīng)過反復(fù)商量討論,并且在查閱了多種資料后,在那一個(gè)printf語句后加了一個(gè)getch(),此時(shí),程序運(yùn)行結(jié)果就符合要求了。對(duì)于在wintc下不能顯示中文的問題,我們通過在第一個(gè)printf語句前加了一句 system(graftabl 936);就很好地解決了這個(gè)問題,使得整個(gè)程序的運(yùn)行都出現(xiàn)了中文提示,而且是在中文的環(huán)境下操作,設(shè)計(jì)更加合理,更加人性化,更加方面用戶使用,同時(shí)也提高了用戶的操作效率。(2) 測試結(jié)果的分析與討論歡迎界面車輛到達(dá)車輛離開車輛信息(車場)車輛信息(便道)五、用戶手冊(cè)這個(gè)程序用來實(shí)現(xiàn)對(duì)停車場內(nèi)車輛的管理,整個(gè)操作界面為中文,
20、更加符合人性化的標(biāo)準(zhǔn),使得用戶使用方便,而且每一個(gè)操作都有提示,使得初次接觸該程序的用戶也能很快適應(yīng)程序的操作。這個(gè)程序操作簡單,對(duì)于車牌號(hào),只需輸入車牌號(hào)上的數(shù)字就行,而且對(duì)于進(jìn)出停車場的時(shí)間,也簡化了操作,只需輸入當(dāng)時(shí)的時(shí)刻就行,沒有具體到小時(shí)和分鐘,但也許這也是該程序不足之處所在。而且該程序也給用戶提供了選擇的機(jī)會(huì),當(dāng)點(diǎn)擊運(yùn)行該程序后,如果想退出程序,可以輸入n或n退出該運(yùn)行程序。至于使用過程中的更具體的問題,可以參照該報(bào)告書中調(diào)試分析那一項(xiàng)的屏幕截圖,整個(gè)程序的運(yùn)行界面大致就如上述屏幕截圖的內(nèi)容。 六、附錄1、源程序代碼#include #include#include#define
21、max 2 /*車庫容量*/ #define price 3 /*每車每時(shí)刻費(fèi)用*/typedef struct node int num; int reachtime; int leavetime; carnode; /*車輛信息結(jié)點(diǎn)*/ typedef struct node carnode *stackmax+1; int top; seqstackcar; /*模擬車站*/typedef struct car carnode *data; struct car *next; queuenode; typedef struct node queuenode *head; queuenod
22、e *rear; linkqueuecar; /*模擬通道*/*-*/ /*函數(shù)聲明部分*/ void initstack(seqstackcar *); /*初始化棧*/ int initqueue(linkqueuecar *); /*初始化便道*/ int arrival(seqstackcar *,linkqueuecar *); /*車輛到達(dá)*/ void leave(seqstackcar *,seqstackcar *,linkqueuecar *); /*車輛離開*/ void list(seqstackcar,linkqueuecar); /*顯示存車信息*/ void pr
23、int(carnode *p) ;/*-*/ void option() int i; char choice; gotoxy(0,0); for(i=1;i=1&chtop=0; for(i=0;istacks-top=null; int initqueue(linkqueuecar *q) /*初始化便道*/ q-head=(queuenode *)malloc(sizeof(queuenode); if(q-head!=null) q-head-next=null; q-rear=q-head; return(1); else return(-1); void print(carnode
24、 *p) /*打印出站車的信息*/ int a1,a2; printf(nttt請(qǐng)輸入離開時(shí)間: ); scanf(%d,&(p-leavetime); printf(nttt離開車輛的車牌號(hào): %d,p-num); printf(nnttt離開車輛到達(dá)時(shí)間: %d ,p-reachtime); printf(nnttt離開車輛離開時(shí)間: %d,p-leavetime); a1=p-reachtime; a2=p-leavetime; printf(nnttt停車場管理費(fèi)用: %d,(a2-a1)*price); free(p); int arrival(seqstackcar *enter,
25、linkqueuecar *w) /*車輛到達(dá)*/ carnode *p; queuenode *t; p=(carnode *)malloc(sizeof(carnode); flushall(); printf(ttt請(qǐng)輸入到達(dá)車輛車牌號(hào): ); scanf(%d,&(p-num); if(enter-toptop+; printf(nttt該車輛在停車場的位置是: %dn,enter-top); printf(nttt請(qǐng)輸入該車輛到達(dá)的時(shí)間: ); scanf(%d,&(p-reachtime); enter-stackenter-top=p; return(1); else /*車場已
26、滿,車進(jìn)便道*/ printf(nttt停車場已滿 該車輛需在便道上等待!); getch(); t=(queuenode *)malloc(sizeof(queuenode); t-data=p; t-next=null; w-rear-next=t; w-rear=t; return(1); void leave(seqstackcar *enter,seqstackcar *temp,linkqueuecar *w) /*車輛離開*/ int i, room; carnode *p,*t; queuenode *q; /*判斷車場內(nèi)是否有車*/ if(enter-top0) /*有車*/
27、 while(1) /*輸入離開車輛的信息*/ printf(ttt停車場里停放的車輛總數(shù): %d,enter-top); printf(nnttt請(qǐng)輸入要離開車輛的位置: ); scanf(%d,&room); if(room=1&roomtop) break; while(enter-toproom) /*車輛離開*/ temp-top+; temp-stacktemp-top=enter-stackenter-top; enter-stackenter-top=null; enter-top-; p=enter-stackenter-top; enter-stackenter-top=n
28、ull; enter-top-; while(temp-top=1) enter-top+; enter-stackenter-top=temp-stacktemp-top; temp-stacktemp-top=null; temp-top-; print(p);/*判斷通道上是否有車及車站是否已滿*/ if(w-head!=w-rear)&enter-tophead-next; t=q-data; enter-top+; printf(nnttt便道的%d號(hào)車進(jìn)入車場第%d位置.,t-num,enter-top); printf(nnttt請(qǐng)輸入現(xiàn)在的時(shí)間:); scanf(%d,&(t-
29、reachtime); w-head-next=q-next; if(q=w-rear) w-rear=w-head; enter-stackenter-top=t; free(q); else printf(nnttt便道里沒有車.n); else printf(nnttt車場里沒有車.); /*沒車*/ void list1(seqstackcar *s) /*列表顯示車場信息*/ int i; if(s-top0) /*判斷車站內(nèi)是否有車*/ printf(nttt車場:); printf(nnttt位置 到達(dá)時(shí)間 車牌號(hào)n); for(i=1;itop;i+) printf(%26d,
30、i); printf(%6d,s-stacki-reachtime); printf(%10d,s-stacki-num); printf(n); else printf(nttt車場里沒有車); void list2(linkqueuecar *w) /*列表顯示便道信息*/ queuenode *p; p=w-head-next; if(w-head!=w-rear) /*判斷通道上是否有車*/ printf(nttt等待車輛的號(hào)碼為: ); while(p!=null) printf(%-10d,p-data-num); p=p-next; printf(n); else printf(
31、nttt便道里沒有車.); void list(seqstackcar s,linkqueuecar w) int flag,tag; flag=1; while(flag) printf(nttt請(qǐng)選擇 1|2|3:); printf(nnttt1.車場nnttt2.便道nnttt3.返回nnttt); while(1) scanf(%d,&tag); if(tag=1|tag=3) break; else printf(nttt請(qǐng)選擇 1|2|3:); switch(tag) case 1:list1(&s);break; /*列表顯示車場信息*/ case 2:list2(&w);bre
32、ak; /*列表顯示便道信息*/ case 3:flag=0;break; default: break; 2、設(shè)計(jì)體會(huì)通過這一周的課程設(shè)計(jì),加深了我對(duì)數(shù)據(jù)結(jié)構(gòu)這門課程所學(xué)內(nèi)容的進(jìn)一步的理解與掌握;同時(shí),通過對(duì)停車場管理系統(tǒng)的開發(fā),使得我將計(jì)算機(jī)課程所學(xué)知識(shí)與實(shí)際問題很好地相聯(lián)接在了一起。在這次課程設(shè)計(jì)中,不僅培養(yǎng)了我開發(fā)一個(gè)中小型程序的能力,而且也培養(yǎng)了我的團(tuán)隊(duì)合作能力。在這次對(duì)停車場管理系統(tǒng)的開發(fā)過程中,我們小組成員互相合作,互相幫助,其中有程序功能成功實(shí)現(xiàn)時(shí)的欣喜,也有遇到問題、解決問題時(shí)的執(zhí)著以及迷茫。在這次課程設(shè)計(jì)中,使得我很好地了解了在開發(fā)程序過程中合作的重要性。在這周課程設(shè)計(jì)中,
33、我們小組所開發(fā)的停車場管理系統(tǒng),基本上可以完成每一項(xiàng)功能。汽車進(jìn)入停車場的信息、離開停車場的信息以及通道上的信息都可以在程序上一一實(shí)現(xiàn)。但是,該程序也有不足的地方。主要表現(xiàn)在車輛的車牌號(hào)上,現(xiàn)實(shí)中的車牌號(hào)是一串字符,可是,在這個(gè)程序中,為了簡便起見,我們就車牌號(hào)定義為了整型,這個(gè)與現(xiàn)實(shí)是有些不符的。還有一個(gè)可以改進(jìn)的地方就是記錄車輛進(jìn)入停車場以及離開停車場的時(shí)間,應(yīng)該精確到小時(shí)以及分鐘的,可是在程序中,為了簡便起見,我們只是設(shè)置成了一個(gè)時(shí)刻,所以,在這方面還是有待改進(jìn)的。改進(jìn)的程序中,還應(yīng)該增加時(shí)間的判斷功能,即停車場內(nèi)有可能有車輛停放的時(shí)間超過一天。還有一個(gè)很重要的問題,對(duì)于停車場內(nèi)可以停放
34、的最多車輛數(shù),為了測試數(shù)據(jù)的方便,我在程序中,定為了2,在實(shí)際使用中,可以改變程度開頭的宏定義以增加停車場的容量??傊?,在這周的課程設(shè)計(jì)中,我以及我們這組的收獲還是挺大的,不僅對(duì)于專業(yè)課有了更好的認(rèn)識(shí),而且在合作的過程中更加了解了團(tuán)隊(duì)精神的重要性。 芃螀肂膃薁蝿螁莈薇螈羄膁蒃螇肆蒆荿螆膈艿蚈螅袈肂薄螄羀芇蒀襖肅肀莆袃螂芆節(jié)袂襖聿蝕袁肇芄薆袀腿膇蒂衿衿莂莈袈羈膅蚇袈肅莁薃羇膆膃葿羆裊荿蒞薂羈膂芁薂膀莇蝕薁袀芀薆薀羂蒅蒁蕿肄羋莇薈膇肁蚆蚇袆芇薂蚆罿聿蒈蚆肁芅莄蚅袀肈莀蚄羃莃蠆蚃肅膆薅螞膇莁蒁蟻袇膄莇螀罿莀芃螀肂膃薁蝿螁莈薇螈羄膁蒃螇肆蒆荿螆膈艿蚈螅袈肂薄螄羀芇蒀襖肅肀莆袃螂芆節(jié)袂襖聿蝕袁肇芄薆袀腿
35、膇蒂衿衿莂莈袈羈膅蚇袈肅莁薃羇膆膃葿羆裊荿蒞薂羈膂芁薂膀莇蝕薁袀芀薆薀羂蒅蒁蕿肄羋莇薈膇肁蚆蚇袆芇薂蚆罿聿蒈蚆肁芅莄蚅袀肈莀蚄羃莃蠆蚃肅膆薅螞膇莁蒁蟻袇膄莇螀罿莀芃螀肂膃薁蝿螁莈薇螈羄膁蒃螇肆蒆荿螆膈艿蚈螅袈肂薄螄羀芇蒀襖肅肀莆袃螂芆節(jié)袂襖聿蝕袁肇芄薆袀腿膇蒂衿衿莂莈袈羈膅蚇袈肅莁薃羇膆膃葿羆裊荿蒞薂羈膂芁薂膀莇蝕薁袀芀薆薀羂蒅蒁蕿肄羋莇薈膇肁蚆蚇袆芇薂蚆罿聿蒈蚆肁芅莄蚅袀肈莀蚄羃莃蠆蚃肅膆薅螞膇莁蒁蟻袇膄莇螀罿莀芃螀肂膃薁蝿螁莈薇螈羄膁蒃螇肆蒆荿螆膈艿蚈螅袈肂薄螄羀芇蒀襖肅肀莆袃螂芆節(jié)袂襖聿蝕袁肇芄薆袀腿膇蒂衿衿莂莈袈羈膅蚇袈肅莁薃羇膆膃葿羆裊荿蒞薂羈膂芁薂膀莇蝕薁袀芀薆薀羂蒅蒁蕿肄羋莇薈膇
36、肁蚆蚇袆芇薂蚆罿聿蒈蚆肁芅莄蚅袀肈莀蚄羃莃蠆蚃肅膆薅螞膇莁蒁蟻袇膄莇螀罿莀芃螀肂膃薁蝿螁莈薇螈羄膁蒃螇肆蒆荿螆膈艿蚈螅袈肂薄螄羀芇蒀襖肅肀莆袃螂芆節(jié)袂襖聿蝕袁肇芄薆袀腿膇蒂衿衿莂莈袈羈膅蚇袈肅莁薃羇膆膃葿羆裊荿蒞薂羈膂芁薂膀莇蝕薁袀芀薆薀羂蒅蒁蕿肄羋莇薈膇肁蚆蚇袆芇薂蚆罿聿蒈蚆肁芅莄蚅袀肈莀蚄羃莃蠆蚃肅膆薅螞膇莁蒁蟻袇膄莇螀罿莀芃螀肂膃薁蝿螁莈薇螈羄膁蒃螇肆蒆荿螆膈艿蚈螅袈肂薄螄羀芇蒀襖肅肀莆袃螂芆節(jié)袂襖聿蝕袁肇芄薆袀腿膇蒂衿衿莂莈袈羈膅蚇袈肅莁薃羇膆膃葿羆裊荿蒞薂羈膂芁薂膀莇蝕薁袀芀薆薀羂蒅蒁蕿肄羋莇薈膇肁蚆蚇袆芇薂蚆罿聿蒈蚆肁芅莄蚅袀肈莀蚄羃莃蠆蚃肅膆薅螞膇莁蒁蟻袇膄莇螀罿莀芃螀肂膃薁蝿螁
37、莈薇螈羄膁蒃螇肆蒆荿螆膈艿蚈螅袈肂薄螄羀芇蒀襖肅肀莆袃螂芆節(jié)袂襖聿蝕袁肇芄薆袀腿膇蒂衿衿莂莈袈羈膅蚇袈肅莁薃羇膆膃葿羆裊荿蒞薂羈膂芁薂膀莇蝕薁袀芀薆薀羂蒅蒁蕿肄羋莇薈膇肁蚆蚇袆芇薂蚆罿聿蒈蚆肁芅莄蚅袀肈莀蚄羃莃蠆蚃肅膆薅螞膇莁蒁蟻袇膄莇螀罿莀芃螀肂膃薁蝿螁莈薇螈羄膁蒃螇肆蒆荿螆膈艿蚈螅袈肂薄螄羀芇蒀襖肅肀莆袃螂芆節(jié)袂襖聿蝕袁肇芄薆袀腿膇蒂衿衿莂莈袈羈膅蚇袈肅莁薃羇膆膃葿羆裊荿蒞薂羈膂芁薂膀莇蝕薁袀芀薆薀羂蒅蒁蕿肄羋莇薈膇肁蚆蚇袆芇薂蚆罿聿蒈蚆肁芅莄蚅袀肈莀蚄羃莃蠆蚃肅膆薅螞膇莁蒁蟻袇膄莇螀罿莀芃螀肂膃薁蝿螁莈薇螈羄膁蒃螇肆蒆荿螆膈艿蚈螅袈肂薄螄羀芇蒀襖肅肀莆袃螂芆節(jié)袂襖聿蝕袁肇芄薆袀腿膇蒂衿衿
38、莂莈袈羈膅蚇袈肅莁薃羇膆膃葿羆裊荿蒞薂羈膂芁薂膀莇蝕薁袀芀薆薀羂蒅蒁蕿肄羋莇薈膇肁蚆蚇袆芇薂蚆罿聿蒈蚆肁芅莄蚅袀肈莀蚄羃莃蠆蚃肅膆薅螞膇莁蒁蟻袇膄莇螀罿莀芃螀肂膃薁蝿螁莈薇螈羄膁蒃螇肆蒆荿螆膈艿蚈螅袈肂薄螄羀芇蒀襖肅肀莆袃螂芆節(jié)袂襖聿蝕袁肇芄薆袀腿膇蒂衿衿莂莈袈羈膅蚇袈肅莁薃羇膆膃葿羆裊荿蒞薂羈膂芁薂膀莇蝕薁袀芀薆薀羂蒅蒁蕿肄羋莇薈膇肁蚆蚇袆芇薂蚆罿聿蒈蚆肁芅莄蚅袀肈莀蚄羃莃蠆蚃肅膆薅螞膇莁蒁蟻袇膄莇螀罿莀芃螀肂膃薁蝿螁莈薇螈羄膁蒃螇肆蒆荿螆膈艿蚈螅袈肂薄螄羀芇蒀襖肅肀莆袃螂芆節(jié)袂襖聿蝕袁肇芄薆袀腿膇蒂衿衿莂莈袈羈膅蚇袈肅莁薃羇膆膃葿羆裊荿蒞薂羈膂芁薂膀莇蝕薁袀芀薆薀羂蒅蒁蕿肄羋莇薈膇肁蚆蚇袆
39、芇薂蚆罿聿蒈蚆肁芅莄蚅袀肈莀蚄羃莃蠆蚃肅膆薅螞膇莁蒁蟻袇膄莇螀罿莀芃螀肂膃薁蝿螁莈薇螈羄膁蒃螇肆蒆荿螆膈艿蚈螅袈肂薄螄羀芇蒀襖肅肀莆袃螂芆節(jié)袂襖聿蝕袁肇芄薆袀腿膇蒂衿衿莂莈袈羈膅蚇袈肅莁薃羇膆膃葿羆裊荿蒞薂羈膂芁薂膀莇蝕薁袀芀薆薀羂蒅蒁蕿肄羋莇薈膇肁蚆蚇袆芇薂蚆罿聿蒈蚆肁芅莄蚅袀肈莀蚄羃莃蠆蚃肅膆薅螞膇莁蒁蟻袇膄莇螀罿莀芃螀肂膃薁蝿螁莈薇螈羄膁蒃螇肆蒆荿螆膈艿蚈螅袈肂薄螄羀芇蒀襖肅肀莆袃螂芆節(jié)袂襖聿蝕袁肇芄薆袀腿膇蒂衿衿莂莈袈羈膅蚇袈肅莁薃羇膆膃葿羆裊荿蒞薂羈膂芁薂膀莇蝕薁袀芀薆薀羂蒅蒁蕿肄羋莇薈膇肁蚆蚇袆芇薂蚆罿聿蒈蚆肁芅莄蚅袀肈莀蚄羃莃蠆蚃肅膆薅螞膇莁蒁蟻袇膄莇螀罿莀芃螀肂膃薁蝿螁莈薇螈羄膁蒃螇肆蒆荿螆膈艿蚈螅袈肂薄螄羀芇蒀襖肅肀莆袃螂芆節(jié)袂襖聿蝕袁肇芄薆袀腿膇蒂衿衿莂莈袈羈膅蚇袈肅莁薃羇膆膃葿羆裊荿蒞薂羈膂芁薂膀莇蝕薁袀芀薆薀羂蒅蒁蕿肄羋莇薈膇肁蚆蚇袆芇薂蚆罿聿蒈蚆肁芅莄蚅袀肈莀蚄羃莃蠆蚃肅膆薅螞膇莁蒁蟻袇膄莇螀罿莀芃螀肂膃薁蝿螁莈薇螈羄膁蒃螇肆蒆荿螆膈艿蚈螅袈肂薄螄羀芇蒀襖肅肀莆袃螂芆節(jié)袂襖聿蝕袁肇芄薆袀腿膇蒂衿衿莂莈袈羈膅蚇袈肅莁薃羇膆膃葿羆裊荿蒞薂羈膂芁薂膀莇蝕薁袀芀薆薀羂蒅蒁蕿肄羋莇薈膇肁蚆蚇袆芇薂蚆
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025屆甘肅省武威市涼州區(qū)六壩鄉(xiāng)中學(xué)生物高一上期末聯(lián)考模擬試題含解析
- 廣東省普寧市第一中學(xué)2025屆生物高一上期末考試模擬試題含解析
- 2025屆山西省渾源縣第五中學(xué)英語高三第一學(xué)期期末質(zhì)量檢測模擬試題含解析
- 花卉苗木運(yùn)輸勞務(wù)合同
- 住宅小區(qū)地下車庫改造合同
- 親子餐廳裝修設(shè)計(jì)合同樣本
- 工廠車間翻新油漆裝修合同
- 親子樂園裝修設(shè)計(jì)施工協(xié)議
- 家電產(chǎn)品進(jìn)口包船合同樣本
- 養(yǎng)老產(chǎn)業(yè)居間服務(wù)協(xié)議合同
- s和m關(guān)系協(xié)議書
- 空分裝備安全檢查表
- 安全風(fēng)險(xiǎn)隱患排查表國家隱患排查導(dǎo)則版
- 停車場施工方案及技術(shù)措施范本
- 分居聲明告知書范本
- 【基于杜邦分析的企業(yè)財(cái)務(wù)現(xiàn)狀探究國內(nèi)外文獻(xiàn)綜述5200字】
- 工程圖學(xué)(天津大學(xué))智慧樹知到答案章節(jié)測試2023年
- 江蘇省民用建筑施工圖綠色設(shè)計(jì)專篇參考樣式2021年版
- GB/T 17853-2018不銹鋼藥芯焊絲
- 初中生離父母有多遠(yuǎn)
- 腳手架拆除監(jiān)理旁站記錄
評(píng)論
0/150
提交評(píng)論