C++数据结构 大作业课程设计_第1页
C++数据结构 大作业课程设计_第2页
C++数据结构 大作业课程设计_第3页
C++数据结构 大作业课程设计_第4页
C++数据结构 大作业课程设计_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿

2、薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇

3、薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄

4、蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂

5、葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿

6、莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆

7、芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄

8、蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁

9、蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿

10、蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆

11、蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄

12、莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈

13、莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆

14、芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃

15、薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁

16、薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈

17、蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆莀蕿蝿莈蚅袇蝿肈蒈螃螈膀蚃虿螇节蒆薅螆莄艿袄袅肄蒅螀袄膆芇蚆袄荿蒃蚂袃肈莆薈袂膁薁袇袁芃莄螃袀莅蕿虿衿肅莂薅羈膇薈蒁羈芀莁蝿羇罿薆螅羆膂葿蚁羅芄蚄薇羄莆蒇袆羃肆芀螂肂膈蒅蚈肂芀芈薄肁羀蒄蒀肀膂芆袈聿芅薂螄肈莇莅蚀肇肇薀薆肆腿莃袅膆芁蕿螁膅莄莁蚇膄肃薇薃螀芆

18、莀蕿蝿莈蚅袇蝿肈蒈螃螈 C+/数据结构 大作业/课程设计【校园导游咨询】【停车场管理】娃娃们可以收着以后用 绝对纯手工打造 内含类模块/一维指针数组(谨以此程序供大家参考。运行结果后面有贴图)目录【1】校园导游咨询 程序设计源代码 及 截图【2】停车场管理方案一 程序设计源代码 及 截图【3】停车场管理方案二 程序设计源代码 及 截图#【1】【校园导游咨询】#(ps:该校园导游咨询系统没有输入值,所有信息是都在class MGraph的构造函数中传输的,且校园景点信息皆为【上海电力学院】景点信息。请大家注意,直接从文章copy到visual stutio中会出现中文字符,注意删除,推荐大家在一

19、行语句的分号后面,点出光标,按一下delete键,然后按一下enter键,完成visual stutio的自动对齐,这样程序看起来一目了然,更易于操作和更改)【问题描述】设计一个校园导游程序,为来访的客人提供各种信息查询服务。【基本要求】(1)设计你所在学校的校园平面图,所含景点不少于10个。以图中顶点表示校内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息。(2)为来访客人提供图中任意景点相关信息的查询。(3)为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一个最短的简单路径。【选作内容】(6)扩充每个景点的邻接景点的方向等信息,使得路径查询结果能提

20、供详尽的导向信息。*【以下为类的定义】*#include<iostream>#include<iomanip>using namespace std;const int MaxSize=18;const int INFINITY=65535;/最大值无穷class direction;template <class T> class MGraph;template <class T>class VertexNode/定义头结点friend class MGraph<T> public:int vex;/顶点名称T vexname;/顶

21、点名称T vexinf;/顶点信息direction dir;/存放顶点方位信息的direction类的dir。;class directionpublic:int ln;/存放在方向图中的横坐标,表示东西int col;/存放在方向图中的纵坐标,表示南北;template <class T>class MGraph/定义无向图的邻接矩阵public:MGraph(); /构造函数,初始化具有n个顶点的图void printvexname();/显示所有景点及景点代号void printvexinf(int i);/显示代号为i景点的名称及信息void printroad(int

22、i,int j);/显示景点ij的最短路径方案信息void printdir(int i,int j);/显示景点i到j的方向信息,如“向东100m,向南200m”VertexNode<T> adjlistMaxSize; /存放景点全部信息的 景点类数组int vertexNum,arcNum; /图的顶点数和边数void Root(int p,int q);/递归寻找pq间的最短路径int PathMaxSizeMaxSize,DistMaxSizeMaxSize;/创建Path和Dist分别存放两点间最短路径的前驱节点,两点间最短路径长度int LineMaxSize;/Li

23、ne存放路径int kkk;/Line数组的标记private:T vertexMaxSize; /存放图中顶点的数组int arcMaxSizeMaxSize;/存放图中边的数组;*【以下为类的实现 即类函数的定义】*template <class T>MGraph<T>:MGraph()/a为景点代号,b为景点名称,c为景点信息,d为景点方位信息的横坐标,e为景点方位信息的纵坐标/s为存放景点邻接矩阵信息的一维数组,根据其对称性可以用公式赋值给二维数组arcint s=0,1,0,0,2,0,0,0,2,0,0,0,2,3,0,0,0,0,4,2,0,0,0,0,0

24、,2,3,0,0,0,0,0,2,3,1,0,0,0,2,0,2,0,0,2,0,4,0,2,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,0,0,2,0;int a=0

25、,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17;char* b="南门","实验楼","南图","大活","睿思楼","大礼堂","南4教","知行楼","国交楼","南3教","南2教","南1教","北图","北3教","北4教","北2教&quo

26、t;,"北1教","北门"char* c="南校区正门","物理实验楼","南校区图书馆","大学生活动中心","教师办公楼、医务室及留学生公寓","大礼堂,用于举办各种文艺演出","南校区第4教学楼","实习基地,计算机房等","国际交流中心,教职工餐厅","南校区第3教学楼","南校区第2教学楼","南校区第1教学楼&quo

27、t;,"北校区图书馆","北校区第3教学楼","北校区第4教学楼","北校区第2教学楼","北校区第1教学楼","北校区正门"int d=8,6,4,4,1,0,0,1,3,4,6,8,4,3,2,3,5,8;int e=8,8,8,10,8,10,7,6,6,6,6,6,3,1,0,0,0,2;int i,j;vertexNum=18;arcNum=30; for(i=0;i<vertexNum;i+)adjlisti.vex=ai;adjlisti.vexname=

28、bi;adjlisti.vexinf=ci;adjlisti.dir.ln=di;adjlisti.dir.col=ei;for (i=0; i<vertexNum; i+)/初始化邻接矩阵for (j=0; j<vertexNum; j+)arcij=arcji=s(i*(i+1)/2+j; /根据s的对称性,将一维数组中的数据赋给二维数组arc template<class T>void MGraph<T>:printvexname()int i;for(i=0;i<vertexNum;i+)cout<<adjlisti.vex<

29、<" "<<adjlisti.vexname<<endl;template<class T>void MGraph<T>:printvexinf(int i)cout<<i<<" "<<adjlisti.vexname<<":"<<adjlisti.vexinf<<endl;template<class T>void MGraph<T>:printdir(int i,int j)int

30、dx,nb;/临时存放i与j之间的南北东西关系 j在i的哪边?dx=adjlistj.dir.col-adjlisti.dir.col;nb=adjlistj.dir.ln-adjlisti.dir.ln;if(dx>0)/即j在i的东边cout<<"向东"<<dx*100<<"m,"elsecout<<"向西"<<dx*(0-100)<<"m,"if(nb>0)/即j在i的南边cout<<"向南"&

31、lt;<nb*100<<"m"elsecout<<"向北"<<nb*(0-100)<<"m"template<class T>void MGraph<T>:Root(int p,int q) if (Pathpq>0) Root(p,Pathpq); Root(Pathpq,q); else Linekkk=q; kkk+; template<class T>void MGraph<T>:printroad(int i,int

32、j)int p,q,m,k,item1,item2;for(p=0;p<vertexNum;p+)for(q=0;q<vertexNum;q+)Distpq=arcpq;/邻接矩阵赋值for(k=0;k<vertexNum;k+) for(p=0;p<vertexNum;p+)if (Distpk>0) for(q=0;q<vertexNum;q+) if (Distkq>0) if (Distpq>Distpk+Distkq)|(Distpq=0)&&(p!=q) Distpq=Distpk+Distkq; Pathpq=k;

33、cout<<"n=n"cout<<"从"<<adjlisti.vexname<<"到"<<adjlistj.vexname<<"的最短路径为:"<<endl;cout<<adjlisti.vexname;kkk=2;Root(i,j);item2=Line2;cout<<"->"printdir(i,item2);cout<<"->"<&l

34、t;adjlistitem2.vexname;for(m=3;m<=kkk-1;m+)item1=Linem;cout<<"->"printdir(item1-1,item1);cout<<"->"<<adjlistitem1.vexname;cout<<endl;cout<<"n=n"*【以下为主函数】*int funcchoice()/系统功能选择页面int choice;cout<<"="<<endl;cou

35、t<<" 欢迎进入校园导游咨询平台"<<endl;cout<<" 1-显示校园所有景点信息"<<endl;cout<<" 2-查询校园景点信息"<<endl;cout<<" 3-问路查询系统"<<endl;cout<<" 4-退出导游资讯平台"<<endl;cout<<"="<<endl;cout<<"请输入要选

36、择的功能号:"cin>>choice;return choice;void main()MGraph<char*> mg;int funcchoice();int fc;while(1)fc=funcchoice();if(fc=1)int i;for(i=0;i<mg.vertexNum;i+)mg.printvexinf(i);else if(fc=2)int i;mg.printvexname();cout<<endl<<"请输入所要查询景点代号:"cin>>i;mg.printvexinf(

37、i);else if(fc=3)int i,j;mg.printvexname();cout<<"请输入两景点代号(我们将把最短路线反馈予您):"cin>>i>>j;mg.printroad(i,j);else if(fc=4)break;elsecout<<"输入有误,请重新输入!"<<endl;运行测试图#【2】【停车场管理系统【方案一 程序】#(ps:该程序有漏洞,若将要离开的车辆是停于便道上的,则对该车进行驶离操作时程序内部有错误数据,虽然做了函数完成这一功能,但因时间有限,没能及时查找

38、更正,现在懒得改了。大家将就看吧。不过运行是可以的)【问题描述】设停车场是一个可停放n辆汽车的 长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车信放在车场的最北端),若车场内已停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其他车辆再按原次序进入车场院,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。试为停车场编制按上述要求进行管理的模拟程序。【基本要求】以栈模拟停

39、车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟管理。每一组输入数据包括三个数据项:汽车“到达”或“离去”信息、汽车牌照号码以及到达或离去的时刻。对每一组输入数据进行操作后的输出信息为:若是车辆到达,则输出汽车在停车场内或便道上的停车位置;若是车辆离去,则输出汽车在停车场内停留的时间和应交纳的费用(在便道上停留的时间不收费)。栈以顺序结构实现,队列以链表结构实现。【测试数据】设n=2,输入数据为:(A,1,5),(A,2,15),(A,3,20),(A,4,25),(A,5,30),(D,2,35),(D,4,40),(E,0,0)。其中:A表示到达(Arrival);D表示

40、离去(Departure);E表示输入结束(End)。*【以下为类的定义】*#include<iostream>using namespace std;const int Max=2;/车库最大容量const double price=30;/每小时的费用/思想:(报告第四页)/我的系统界面,输入信息为:(到达/离开/退出);车牌号;时刻/因此,我的停车场类分成车辆到达和车辆离开两个主要的函数实现。/车辆到达,有入栈和入队。车辆离开有出栈,出队和入栈操作。/因此我又编写入栈的类,队的类。与parkingmanagement进行友元。/*类定义*class car/车的信息类publ

41、ic:double time;/计费时间int number;/车牌号car *next;/存放car类型元素的数组初始地址;class carstack/栈(停车场)的类friend class parkingmanagement;/parkingmanagement能访问carstack类中所有成员public:carstack();/构造函数,栈的初始化int empty();/判断栈是否为空int full();/判断栈是否为满car *s;/存放car类型栈元素的数组初始地址int top;/栈顶指针;class carqueue/队列(便道)的类friend class parki

42、ngmanagement;/parkingmanagement能访问carstack类中所有成员public:carqueue();/构造函数,队列的初始化int full();/判断队列是否为满car *front,*rear;/存放car类型队列元素的数组初始地址;class parkingmanagementpublic:int pushstack(carstack &cs,int cnum,double ctime);/入栈,cs栈内进行调整,返回栈内位置void popstack(carstack &cs,int cnum);/出栈,cs栈内进行调整,/根据车牌号把车

43、弹出栈,将出栈car的number赋值给int popstacknumber()/将出栈car的time赋值给double popstacktime(),无返回值!int pushqueue(carqueue &cq,int cnum,double ctime);/入队,队内进行调整,返回队内位置int popqueue(carqueue &cq);/出队,队内进行调整,返回汽车车牌号void arrival(carstack &cs,carqueue &cq,int cnum,double ctime);/车辆到达,/根据输入的车牌号、到达时间,变更函数参数;

44、并cout车位信息void leave(carstack &cs,carqueue &cq,int cnum,double ctime);/车辆离开,/根据输入的车牌号找到汽车,并进行出栈操作、出队操作和入栈操作;/并cout停留时间和收费情况void deletequeue(carqueue &cq,int i);/删除cq过道中第i辆车int popstacknumber;/专门存放出栈的时候返回的车牌号double popstacktime;/专门存放出栈的时候返回的时刻;*【以下为类的实现】*carstack:carstack()/构造函数,栈的初始化top=-

45、1;s=new carMax;/创建car类型栈元素的数组if(s=NULL)cout<<"栈空间分配不成功!"<<endl;exit(1);int carstack:full()/判断栈是否为满return top=Max-1;carqueue:carqueue()/构造函数,队列的初始化rear=front=NULL;int parkingmanagement:pushstack(carstack &cs,int cnum,double ctime)/入栈,cs栈内进行调整,返回栈内位置if(cs.top=Max-1)/Max从1开始,t

46、op从0开始cout<<"停车场已满!"<<endl;return Max;else cs.top+;(cs.scs.top).number=cnum;/将cnum赋给栈顶位置的车的车牌号,s是car类型栈元素的数组(cs.scs.top).time=ctime;/将ctime赋给栈顶位置的车的入栈时间,s是car类型栈元素的数组return (cs.top+1);/返回栈内位置加1,即停车场内车位从1号开始void parkingmanagement:popstack(carstack &cs,int cnum)/出栈,cs栈内进行调整,/

47、根据车牌号把车弹出栈,将出栈car的number赋值给int popstacknumber/将出栈car的time赋值给double popstacktime,无返回值!int i;car p;carstack stemp;/定义一个carstack类型的临时存放出栈元素的栈for(i=0; i<=cs.top; i+)if(cs.si).number=cnum) break;/当要出栈的车的车牌号=栈内的车牌号元素时,跳出循环p=cs.si;/将要出栈的元素赋给car类型的p存放while(cs.top>i)stemp.s+(stemp.top)=cs.s(cs.top)-;/出

48、栈的元素数组逐个赋给临时栈popstacknumber=p.number;/将这个车牌号信息传给int popstacknumber()popstacktime=p.time;/将该车的时间信息传给double popstacktime()cs.top-;/栈顶指针回到原来位置while(stemp.top>=0)cs.s+(cs.top)=stemp.s(stemp.top)-;/临时栈出栈的元素逐个赋给原栈,完成先退再进的工作int parkingmanagement:pushqueue(carqueue &cq,int cnum,double ctime)/入队,队内进行调

49、整,返回队内位置car *p,*countp;int count(1);/count用于记录车在过道上的位置信息,因队列为链式的,所以进行循环累加p=new car;/创建一个car类型的指针p->number=cnum;p->time=ctime;p->next=NULL;/首先将指向存放car类型元素的数组初始地址置空if (cq.front=NULL)/第一次入队要判断头结点是否为空cq.front=cq.rear=p;else /尾插法插入元素p->next=(cq.rear)->next;(cq.rear)->next=p;cq.rear=(cq.

50、rear)->next;countp=(cq.front)->next;while(countp!=NULL)count+;countp=countp->next;/count即车在过道上的位置,【从1开始计!】return count;int parkingmanagement:popqueue(carqueue &cq)/出队,队内进行调整,返回汽车车牌号car p;p.number=(cq.front)->next)->number;/cq队里,从cq.front开始指向下一个元素的车牌号赋给car类型的车信息p.time=(cq.front)-&g

51、t;next)->time;/cq队里,从cq.front开始指向下一个元素的时刻/赋给car类型的车信息p.next=(cq.front)->next)->next;/cq队里,从cq.front开始指向下一个元素的指针/赋给car类型的车信息的下一个元素的指针return p.number;cq.front=(cq.front)->next;void parkingmanagement:arrival(carstack &cs,carqueue &cq,int cnum,double ctime)/车辆到达,根据输入的车牌号、到达时间,变更函数参数;

52、并cout车位信息int pos;if(!(cs.full()/如果栈未满,车辆停入停车场int fl(0),i;/定义一个从0开始的标记flfor(i=0;i<=cs.top;i+)if(cs.si.number=cnum)/如果到达的车的车牌号=栈内已有车辆的车牌号fl=1;/fl记1break;if(fl=1)/如果到达的车的车牌号!=栈内已有车辆的车牌号cout<<"输入错误!请重新输入!"<<endl;elsepos=pushstack(cs,cnum,ctime);/入栈,返回车位信息cout<<"该停车场还有

53、空位,请到"<<pos<<"号车位进行泊车"<<endl;cout<<endl;else/如果栈满,车辆暂停便道pos=pushqueue(cq,cnum,ctime);/入队,返回车位信息cout<<"该停车场已满,请将车停到便道"<<pos<<"号车位上"<<endl;cout<<endl;void parkingmanagement:leave(carstack &cs,carqueue &cq,

54、int cnum,double ctime)/车辆离开,根据输入的车牌号找到汽车,并进行出栈操作、出队操作和入栈操作;并cout停留时间和收费情况int i,flag(0),pstack,count(1),outcarnum;double hour;car *p;for(i=0;i<=cs.top;i+)if(cs.si).number=cnum)flag=1;break;if(flag)/如果输入的车牌号与栈内已有车辆的车牌号一致popstack(cs,cnum);/出栈操作hour=ctime-popstacktime;/时间计算outcarnum=popqueue(cq);/将便道

55、上的第一辆车出队,入栈。并将其车牌号赋给outcarnumpstack=pushstack(cs,outcarnum,ctime);/将便道上的第一辆车,入栈cout<<"该车在本停车场内停留时间为"<<hour<<"分钟,应付金额"<<hour*(price/60)<<"元!"<<endl;else/如果输入的车牌号与队列里已有车辆的车牌号一致p=cq.front;while(p!=NULL)count+;/如果在过道中找到该车,则该车的位置为过道中的第coun

56、t位置(count从1开始)p=p->next;if(p->number=cnum)/在过道中找到要出去的车,则在队列中删除该car。/后面的车辆依然顺序排列,补足空位deletequeue(cq,count);if(count>Max)cout<<"您的车在便道上的位置为"<<count<<"号车位,请自行驶离,无需付费!"<<endl;break;if(p=NULL)cout<<"您的车不在本停车场内,或输入有误,请重新输入!"<<endl;

57、void parkingmanagement:deletequeue(carqueue &cq,int i) car *p,*q;int j(0);p=cq.front;while(p && j<i-1)p=p->next;j+;/找到第i个节点(i从1开始)if(!p | !p->next)cout<<"i不合法"elseq=p->next;p->next=q->next;delete q;*【以下是主程序】*void print()cout<<"= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ="<<endl;cout<<"= 欢迎光临! ="<<endl;cout<<"= ="<<endl;cout<<"= 本

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论