数据结构课程设计报告(汇总10篇).docx

上传人:有**** 文档编号:91752926 上传时间:2023-05-27 格式:DOCX 页数:17 大小:47.51KB
返回 下载 相关 举报
数据结构课程设计报告(汇总10篇).docx_第1页
第1页 / 共17页
数据结构课程设计报告(汇总10篇).docx_第2页
第2页 / 共17页
点击查看更多>>
资源描述

《数据结构课程设计报告(汇总10篇).docx》由会员分享,可在线阅读,更多相关《数据结构课程设计报告(汇总10篇).docx(17页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、数据结构课程设计报告(汇总10篇)数据结构课程设计报告第1篇【问题描述】参加计算机设计大赛的n个学校编号为1n,赛事分成m个项目,项目的编号为1m.比赛获奖按照得分降序,取前三名,写一个统计程序产生各种成绩单和得分报表。【基本要求】1)每个比赛项目至少有10支参赛队;每个学校最多有6支队伍参赛;2)能统计各学校的总分;3)可以按照学校编号或名称,学校的总分、各项目的总分排序输出;4)可以按学校编号查询学校某个项目的获奖情况;可以按项目编号查询取得前三名的学校;5)数据存入文件并能随时查询学校定义为一个结构体类型,typedefstructintschnum,i;/学校的编号intteamnum

2、6;/每个学校六个参赛队intscore6;/学校六个项目得分intsummscore;school;/学校记录类型顺序表中存放学校数组和长度:structListschoolr10;intlength;还有对顺序表进行排序的voidInsertSort(List&L)函数和打印顺序表voidprint(ListL)函数。流程图:数据结构课程设计报告第2篇1、课题内容问题描述:以一个mn长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍,设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通路,或得出没有通路的结论。基本要求:(1)以二维数组存储迷宫数据;(2)求得的通路以二元组(i,j)的形

3、式输出,其中(i,j)指示迷宫中的一个坐标。选做内容:(1)以图形的形式输出迷宫及其通路;(2)显示整个寻找通路的动态过程。2、实现目标基本要求的实现:A.随机产生一个任意阶数(阶数限制在100之内)的长方阵(二维数组)表示迷宫;B.分析求得通路的路径,并将其以二元组(i,j)的形式输出,其中(i,j)指示迷宫中的一个坐标;C.输出从迷宫入口到出口走过的步数;选做要求的实现:A.以普通动态可视化形式输出迷宫:该种形式利用生成的二维迷宫数组和路径数组、借助easyX中的进行可视化操作,对寻找路径的过程展示了标准的动态可视化的进程;B.以附加效果动态可视化形式输出迷宫:该种形式在A的基础之上,利用

4、多种函数将游戏人物、游戏特有画面、游戏背景音乐进行呈现;C.在B的基础之上,将各种音乐及图片文件嵌入可执行文件exe中;数据结构课程设计报告第3篇设计一个简单的算术表达式计算器。实现标准整数类型的四则运算表达式的求值(包含括号,可多层嵌入)。模拟计算器程序主要利用了“栈”这种数据结构来把中缀表达式转化为后缀表达式,并且运用了递归的思想来解决Abs()和Sqrt()中嵌套表达式的问题,其中还有一些统计的思想来判定表达式是否合法的算法本设计需要考虑许多的问题,首先是表达式的合法判断,然后是字符串表达式提取分离的问题,核心部分就是中缀表达式转化为后缀表达式。对于第一个问题,我是分步来判断,首先表达式

5、中是否含有其它非法字符,然后判断括号是否合法,接着判断运算法两边是否合法,比如除法时,除数不能为零。对于第二个问题,我是直接转换的,从左到右遍历中缀表达式,把数据全部取出来。对于核心问题,利用了“栈”这种“后进先出”的数据结构,利用两个“栈”,一个“数据栈”,一个“运算符栈”来把中缀表达式转换成后缀表达式。最后利用后缀表达式来求解表达式的值。数据结构课程设计报告第4篇如果遇到A()和S()中含有表达式,而不是单纯的数字,例如A(*S(),那么就需要对其字表达式“*S()”进行递归处理,这个子表达式中还含有子表达式“”,然后再递归处理,依次类推下去。其核心代码如下:Expressiontemp;

6、/创建子表达式();for(j=0;i+j+2stj=si+j+2;stj=0;/复制表达式();/得到子表达式的值numk.first=(si=A?fabs():sqrt();numk.second=0;/标记为数据k+,i=Posi+1;数据结构课程设计报告第5篇中缀表达式转化为后缀表达式,利用两个“栈”,一个“数据栈”,一个“运算符栈”来把中缀表达式转换成后缀表达式。最后利用后缀表达式来求解表达式的值。设一个stack存后缀数据,一个rout栈存运算符。算法流程如下:(1)从右向左依次取得数据ch。(2)如果ch是操作数,直接加进stack中。(3)如果ch是运算符(含左右括号),则:a

7、:如果ch=(,放入堆栈rout中。b:如果ch=),依次输出堆栈rout中的运算符,直到遇到(为止。c:如果ch不是)或者(,那么就和堆栈rout顶点位置的运算符top做优先级比较。1:如果ch优先级比rtop高,那么将ch放入堆栈rout。2:如果ch优先级低于或者等于rtop,那么输出top到stack中(直到!top或者满足1),然后将ch放入堆栈rout。可以看出算法复杂度是O(n)的,因此效率是比较高的,能够在1s内处理百万级别长度的表达式。算法的主要思想是利用“栈”的后进先出的特性,以及运算符的优先级,这里我们定义运算符的优先级;代码如下:intGetKey(charc)/定义运

8、算符的关键字intkey;switch(c)case+:key=1;break;case-:key=1;break;case*:key=2;break;case/:key=2;break;case(:key=4;break;case):key=5;break;returnkey;中缀转化为后缀处理的核心代码如下:/*双栈,sta1存放后缀表达式,sta2存放运算符符号*/stacksta1,sta2;for(i=0;iif(!numi.second)(numi);/为数据,直接放入sta1elseif(numi.second=4)(numi);/为(,直接放入sta2/*为),从sta2中取出

9、运算符,push到sta1中,直到遇到)*/elseif(numi.second=5)while().second!=4)();();();/取出(括号/*为+,-,*或者/运算符,取出sta2中的运算符,push到sta1中,直到比sta2栈顶中的优先级大*/elsewhile(!()&().second=numi.second&().second!=4)();();(numi);/放入当前运算符最后,后缀表达式就存放在sta1栈中,把sta1栈中的结果存放到SufExp中就得到了后缀表达式。数据结构课程设计报告第6篇1、函数及结构体设计迷宫格子的结构体,用易懂的ElemType表示,i,j

10、表坐标值,dr(direction)表方向,初始值为-1,实际有意义的值分别是0,1,2,3,分别表示四个不同的方向:typedefstructinti;intj;intdr.ElemType;顺序栈的结构体,用来存储迷宫格子结构体的栈结构,用SqStack表示:typedefstructElemTypedataINF;/INF是事先定义的常量inttop;/top指针SqStack;栈的基本运算函数:voidInitStack(SqStack&st);/初始化栈voidGetTop(SqStackst,ElemType&e);/取栈顶元素voidPush(SqStack&st,ElemTyp

11、ee);/入栈voidPop(SqStack&st,ElemType&e);/出栈boolStackEmpty(SqStackst);/检验栈是否为空迷宫路径生成、迷宫算法的基本函数:intmazepath(SqStackst,intx1,inty1,intx2,inty2,int&size,intmazeN,ElemType(&mpath)INF);/寻找路径函数,搜索路径为:(x1,y1)-(x2,y2)A.函数参数说明:x1,y1是主函数中传入的起点坐标;x2,y2是主函数中传入的终点坐标,SqStackst是主函数中定义并初始化过的栈,用来在mazepath函数中记录迷宫当中的元素;E

12、lemType(&mpath)INF相当于引用的数组参数,我们需要用到mpath数组在mazepath函数中改变后的值;size是最终mpath中实际元素的多少,换个说法也是实际步数的多少,由于要在主函数中用到size值,且其在mazepath函数中值发生改变,故需要用引用;B.函数设计思想说明:本函数实现主要依托栈的存储结构、深度优先遍历(一条路走到黑)的思想进行函数设计。具体主要利用循环体判断栈是否为空,如果为空,说明函数中进栈后的各个格子对应的元素都由于无路可走而进行退栈,最终表现为栈空的状态;如果不空,则依次执行各个选择结构和小循环体结构,即已到达终点进行路径mpath记录和输出路径坐

13、标的语句、未达到终点则找寻四个方向中是否有可走的格子,如果找到了可走的格子,就对这个格子进行入栈操作,如果周边已经没有可走的格子,那说明此时已经进入了类似于死胡同的境地,那么就需要写入退栈等操作来返回上一个格子重新进行判断。普通动态可视化迷宫函数:voiddrawgraph1(ElemTypempath,intmazeN,intsize,intr,ints,intBoxSize)/可视化操作A.函数参数说明:ElemTypempath存储了路径数组,intmazeN是迷宫矩阵数组,用二者作参数可以借其具体值绘制迷宫;size是最终mpath中实际元素的多少,用来在控制台中输出步数多少;r和s是

14、用户在控制台输入的矩阵规模的参数,在drawgraph1中可以用来绘制智能大小的窗体和用作迭代变量的最大限值;BoxSize是主函数定义的格子尺寸变量,BoxSize根据用户输入的矩阵规模调整窗体大小以提高观感;B.函数设计思想说明:本函数主要依托easyX的头文件当中的方法,依次绘制窗体、设置线条各项参数,并利用循环体结构绘制迷宫当中的矩形小边框(包括绘制迷宫和动态路径可视化等),最后用特定的一些方法来实现动态效果。富有游戏效果的动态可视化迷宫函数:voiddrawgraph2(ElemTypempath,intmazeN,intsize,intr,ints,intBoxSize)A.函数参

15、数说明:本函数参数与相同,在此不作赘述;B.函数设计思想说明:本函数同样主要依托easyX的头文件当中的方法,依次绘制窗体、设置线条各项参数,只不过在一些步骤上做了增加或删减,例如drawgraph1当中绘制迷宫的部分画面在drawgraph2无需写入,更多不同体现在写入drawgraph2的embedded函数的调用上面;资源嵌入函数:voidembedded(ElemTypempath,intmazeN,intsize,intr,ints,intBoxSize)A.函数参数说明:ElemTypempath是存储了路径数组,intmazeN是迷宫矩阵数组,二者同以上两个函数类似,都用做绘制迷

16、宫;size则用作循环体结构当中迭代变量的初始值;r和s是用户在控制台输入的矩阵规模的参数,用来限定迭代变量的范围;BoxSize意义同上;B.函数设计思想说明本函数依托在窗体上绘制图片和加载音乐的方法,利用嵌入的资源文件(图片和音乐),首先进行迷宫的基本绘制,使其呈现出类似于现实游戏当中(例如推箱子)的效果;之后再进行卡通人物寻找路径的动态化显示,这之间,同时会进行背景音乐的定长播放,从而使其更加富有游戏效果;随机数生成函数:intrandnumber()本函数用以生成标准随机数,进而在主函数中生成随机迷宫矩阵;主函数:主函数中主要用以实现各函数算法和控制台的输出。主函数同时承担了定义和初始

17、化随机规模二维数组(二级指针),并在控制台输出提示语句、运用一定方法对用户不符合要求的输入语句会要求重新输入、初始化栈以进行mazepath和drawgraph各项函数的调用。2、函数实现说明栈的基本函数实现说明:A.voidInitStack(SqStack&st)初始化栈函数实现步骤:置栈顶指针为-1即可;B.voidGetTop(SqStackst,ElemType&e)取栈顶元素将预备栈顶元素参数e置为引用,并在函数体中把付给e;C.voidPush(SqStack&st,ElemTypee)入栈函数入栈函数的实现步骤是将栈顶指针+1并把参数e赋给;D.voidPop(SqStack&

18、st,ElemType&e)出栈函数出栈函数的实现步骤跟入栈相反,而且是先将赋给引用的e,再把top指针-1;E.boolStackEmpty(SqStackst)检验栈空函数检验栈空函数的实现步骤是判断top指针是否为-1,如果是返回true,反之则返回false;mazepath函数实现说明:(迷宫路径生成、迷宫算法的基本函数)A.定义基本变量,如i,j,dr(direction)用于记录栈顶元素,i_next,j_next用于记录下一方位的方块行列坐标;k相当于迭代变量,在下面的函数中起到为mpath传值的作用;sc是用其值来记录是否找到可通达的相邻可走元素;e是ElemType类型,用

19、来记录栈顶元素;B.用函数传递的参数赋给e中的i,j,dr,并进栈e元素(Push(st,e);),并且每走过一个元素,记其中的maze数组对应值为-1,表示已经走过此格子;C.定义循环体,循环条件是栈不为空,如果最终找到路径返回1并输出,如果没有找到就返回0。以下为大循环体的大体框架,接下来就循环体当中的各步骤进行介绍:while(!StackEmpty(st)ifreturn1;while(dr4&sc=0)ifelsereturn首先在循环初始取栈顶元素(GetTop(st,e);),并将其赋给i,j,dr,再判断这个栈顶元素是不是用户输入的终点,如果是,就进行mpath的赋值工作,由于

20、栈的结构是先进后出,所以在进行路径的输出是,需要将迭代变量从size到1倒着进行输出;此外,为了输出的整洁,故采用了if(k+2)%5=0)进行每5个1行的输出工作;if(i=x2&j=y2)/已到达终点coutv一条迷宫路径如下:v=1)k-;coutv(vmpathk.iv,vmpathk.jv)vt;if(k+2)%5=0)coutn;/每输出5个后换一行return1;在大循环体初始判断完是否已经走到终点之后,我们需要对sc变量(记录是否找到相邻通路的变量)进行赋值,(0代表未找到相邻格子,1代表找到可走的相邻方块),在进行小循环依次试验四个方向上有无可走的相邻方块,方法是在while

21、循环之初把dr+1(dr初始值是-1,真正有意义的值,即四个方向所代表的值是0,1,2,3),再判断dr的值对应的maze数组是否为0,如果是0说明找到了可走的路径,这时需要把sc赋值为1.sc=0;/0:未找到相邻格子while(dr4&sc=0)dr+;switch(dr)case0:i_next=i-1;j_next=j;break;case1:i_next=i;j_next=j+1;break;case2:i_next=i+1;j_next=j;break;case3:i_next=i;j_next=j-1;break;if(mazei_nextj_next=0)/找到可走相邻方块sc

22、=1;在找寻路径的步骤结束之后,需要对sc值进行判断,如果sc为1(找到路径),就进行元素的入栈工作,并把maze数组中的值赋为-1,表示已经走过此格子,防止再走重复的路径;如果sc不为1,说明没有找到可走的路径,这个时候说明已经走到了类似死胡同的境地,需要进行退栈工作返回上一个格子;if(sc)/找到可走相邻方块.dr=dr;/修改原栈顶元素的dr值=i_next;=j_next;=-1;Push(st,e);/入栈操作mazei_nextj_next=-1;else/没有可走相邻方块Pop(st,e);/退栈操作drawgraph1函数实现说明:(普通迷宫动态可视化函数)A.drawgra

23、ph1函数首先需要根据传入的r、s参数(迷宫矩阵规模)生成智能大小的窗体,其中BoxSize意义同上,表示一个格子的最佳尺寸:initgraph(s*BoxSize,r*BoxSize,EW_SHOWCONSOLE);/创建窗口,确定窗口大小B.接着本函数定义了hnd来修改窗体的标题:HWNDhnd=GetHWnd();/设置窗口标题SetWindowText(hnd,v迷宫游戏v);/弹出窗口,提示用户操作C.然后本函数设置了窗体的背景颜色为白,并进行所必须的清屏工作:setbkcolor(WHITE);cleardevice();/清屏D.接着本函数每进行不同性质格子的绘制之前,都要设置对

24、应矩形的填充颜色、线条颜色和线条样式:setfillcolor(BLACK);/设置填充颜色setlinecolor(BLACK);/设置线条颜色setlinestyle(PS_SOLID,1);/设置线条样式E.以障碍物的绘制为例,利用for循环对其进行绘制,其他性质格子的绘制与此类似,在此不再赘述:for(inti=0;ir;i+)for(intj=0;js;j+)if(mazeij=1)fillrectangle(j*BoxSize,i*BoxSize,(j+1)*BoxSize,(i+1)*BoxSize);/绘制障碍物F.以绘制mpath为例,介绍动态实现的原理(在for循环中依次绘

25、制,并写入Sleep函数,SleepTime为开头定义的常量):fillrectangle(mpathi.j)*BoxSize,(mpathi.i)*BoxSize,(mpathi.j)+1)*BoxSize,(mpathi.i)+1)*BoxSize);Sleep(SleepTime);drawgraph2函数实现说明:(富有游戏效果的迷宫动态可视化函数,本函数实现原理类似于drawgraph1,在此只介绍不同之处)A.drawgraph2中没有像drawgraph1绘制黑色方块障碍物的函数,但绘制了基本迷宫的格子方块;B.drawgraph2更多特性体现在drawgraph2中embedd

26、ed函数的调用;embedded函数实现说明:A.资源嵌入函数embedded本质上是为drawgraph2服务的;B.在实现或编写此函数之前,应当添加准备嵌入的资源文件,本程序嵌入的资源文件有、(三张图片在rc文件中的ID号分别为”first”、”second”、”third”)、胜利.wav、游戏背景音乐、游戏背景音乐(三个音乐的ID号分别为IDR_WAVE1、IDR_WAVE2、IDR_WAVE3),这些文件双击打开后将呈现二进制存储形式,分别归属于”PNG”和”WAVE”,注意音乐格式必须为wav(PlaySound函数)而不能为MP3(MP3需要借用mciSendString函数,但

27、mciSendString实现资源嵌入更加复杂);图3-1资源文件一览图C.首先,本函数定义了三个图像对象img1、img2、img3,并将其放在loadimage函数中进行加载:(ID号不能以数字开头)loadimage(&img1,_T(vPNGv),_T(vfirstv),BoxSize,BoxSize);loadimage(&img2,_T(vPNGv),_T(vsecondv),BoxSize,BoxSize);loadimage(&img3,_T(vPNGv),_T(vthirdv),BoxSize,BoxSize);D.接着利用for循环嵌套实现将图片在指定位置进行呈现,以下步骤

28、是对障碍物的图片呈现:if(mazeij=1)putimage(j*BoxSize,i*BoxSize,&img1);/将图片放在窗体指定位置进行显示E.富有游戏效果的通达路径的动态可视化实现:同样利用for循环,将卡通人物的图片进行指定位置、指定大小的输出,并在其后附加Sleep(SleepTime);语句,以实现其动态效果:putimage(mpathi.j*BoxSize,mpathi.i*BoxSize,&img3);/将图片放在窗体指定位置进行显示Sleep(SleepTime);F.背景音乐的定时播放实现:播放音乐的操作:PlaySound(MAKEINTRESOURCE(IDR_

29、WAVE2),GetModuleHandle(NULL),SND_RESOURCE|SND_ASYNC|SND_LOOP);/加载资源文件当中的音乐(游戏背景音乐)暂停音乐的操作:PlaySound(NULL,NULL,NULL);定长播放音乐的操作:例如在播放音乐后加Sleep(6000);(持续6s),再在其后暂停音乐;randnumber函数实现说明:随机数生成函数借用RAND_MAX等实现随机数的生成工作:intn=(int)(rand()*/RAND_MAX);主函数main实现说明:A.输入和输出的实现:对于输入和输出语句,main函数中除却常规的cin和cout之外,为防止用户输

30、入不符合要求的字符,特采用goto语句回到上级操作并输出相应提示信息,例如:gotoend3;B.二级指针和maze随机数组的初始化的实现:主函数中分别为arr分配行、列空间,再把arr中的值赋给maze数组,并利用for嵌套循环对其进行控制台输出;C.函数的调用实现:在定义和初始化栈之后,调用mazepath和drawgraph等函数完成解迷宫的实现。数据结构课程设计报告第7篇1、主要负责工作:迷宫问题解决方案的探索工作;mazepath函数的参与编写工作(求通路);drawgraph1、drawgraph2、embedded函数的主要编写工作(迷宫可视化);代码整合、代码调试、代码bug修

31、正的解决等工作;2、课题总结和心得:迷宫问题的解决主要运用到了栈和深度优先遍历的思想,在此基础之上,还用到了easyX来解决迷宫及其动态可视化问题。我想,代码的编写工作诚然是较为枯燥的,并且在本应用程序总体编写完之后,依然会不断出现各种各样的bug。可能在某种程度上,编程就是发现并解决一个又一个的bug,这样的反复过程达到了量变,才会有应用程序的质变。同时,我觉得编程也是充满乐趣的,因为在应用程序调试成功画面出现的那一刻,满腹成就感的那种喜悦是难以在生活中遇见的。数据结构课程设计报告第8篇1、认识体会:我认为,在本次的数据结构课程设计当中,我们不仅收获了在课本上难以学到的知识,还大大增加了我们

32、自身的动手和编程能力。在此过程中,我们通过查找大量资料,观看教程,以及不懈的努力,提高了自身独立思考和动手操作的能力。更重要的是,在课程设计当中,我们学会了攫取课本之外的知识,比如easyX、mfc、qt等,我们通过大量的实践掌握了课本之外的编程知识,在一定程度上也增加了自己的编程能力。2、建议:这次我们课程设计的小组队员和组长都很团结,并且讲究合作,良好地发挥了团队的作用。但我认为课程设计的选题也可以在一定程度上增加个人选题,尽管致力于团结合作的团队效率往往比个人更高,但在以往小组作业当中总会不可避免地会出现所谓“划水”的队员(并不针对某个小组),这就导致许多同学从小组课程设计中得到的收获不

33、如以个人形式开展的课程设计。cpp文件:注意事项:需要添加相应资源文件和安装easyX开源库;数据结构课程设计报告第9篇用户输入不符合要求的字符后的系统反馈工作怎样解决?当用户在控制台输入不符合要求的字符后,如果主函数里没有做好相应的处理工作,那么系统就不能做出恰当的反馈。为此,本应用程序在代码实现部分添加了goto语句,如果用户输入了不符合要求的非法字符,那么控制台将会显示相应提示信息提示用户进行重新输入,同时代码内部会自动跳转到事先定义的end部分;路径查找怎样实现?路径的查找首先的难题就是用什么样的存储结构?其次的疑问是怎样具体实现这一过程?经过一番探索,我们小组发现路径的查找可以用栈的

34、存储结构,其中每一个格子代表一个元素,每一个格子又有i,j和dr三个变量,用来表示其坐标和方向。路径的查找主要依托这些基础的结构体进行反复的入栈、退栈工作,入栈说明周围相邻格子可走,退栈说明已经进无可进,只能退回。以此进行反复的路径查找工作,如果最终找到了通达的路径,则会对mpath进行传值,并进行看似“倒着输出”的工作。可视化及动态过程如何实现、窗口闪退的问题?起初时间我们并不了解动态可视化具体应该如何实现,后来通过easyX的进一步学习,发现Sleep函数可以实现动态过程,并在一定程度上解决了闪退的问题(后期用system(“pause”)得到了更好的解决);如何将资源文件嵌入exe的问题

35、?相对于打包的文件,单个exe文件更能满足用户需求。因此原本用mciSendString函数实现的播放音乐功能已经不再使用,故本程序采用了添加资源文件的方法,并包含头文件,将背景音乐转换为wav格式,这样背景音乐就可以通过playsound函数进行播放,通过调试即可将这些资源嵌入exe文件当中;数据结构课程设计报告第10篇1、应用程序说明:本应用程序采用随机生成的迷宫矩阵,迷宫周围一圈采用窗口边框作壁垒(以下为随机生成的17*18迷宫矩阵范例),实际程序运行过程当中会根据输入的规模随机产生任意小于等于100的长和宽的迷宫矩阵:(1代表墙壁,0是可走的路)00010001110110000000

36、1000000000000000110011110000101111000010000001000011001001100010000001011000000001010000100110001000100001100010000011000010001010011001010000100010010100011101000011000000100000000000000101000101000010100100000000110100010100000000100010011010010000011100000100000000101111010010010100本应用程序分为两部分进行显示

37、:控制台和利用easyX产生的窗体;在控制台输入相关参数,如果迷宫中起点和终点有通达的路径,将会弹出迷宫动态可视化界面;本应用程序需要输入的参数有:A.规模(100以内矩阵的行数和列数);B.迷宫起点和终点;C.选择是否想要游戏效果(输入“是”或“否”,有游戏效果的界面比没有游戏效果的界面更加卡通化、并附有已经嵌入可执行文件exe的背景音乐和图片)。本应用程序输出的参数有:A.根据用户需求(即输入的迷宫矩阵行数和列数)生成的随机迷宫矩阵;B.提示语句,需要用户根据提示语句进行恰当操作;C.输出迷宫路径所经过的坐标;D.输出迷宫路径所走步数;2、操作流程说明:双击以运行“数据结构.exe”文件;

38、当控制台显示“请输入迷宫矩阵的行数(100以内):”时,在控制台输入迷宫矩阵的行数,如果输入的数值超过100或小于1,将会要求用户重新输入;当控制台显示“请输入迷宫矩阵的列数(100以内):”时,在控制台输入迷宫矩阵的列数,同理,如果输入的数值超过100或小于1,将会要求用户重新输入;当控制台显示“请输入起点:(注意迷宫矩阵左上角坐标为(0,0),请您依次输入坐标数值,输入范式:00)”时,依次输入坐标数值,中间可以用空格隔开,也可以敲回车;当控制台显示“请输入终点:(注意迷宫矩阵左上角坐标为(0,0),请您依次输入坐标数值,输入范式:00)”时,同理,依次输入坐标数值,中间可以用空格隔开,也可以敲回车;当控制台显示“您是否想要游戏效果(请您输入“是”或“否”)”时,用户需要输入是或否进行反馈,如果输入非法字符将会被要求重新输入;如果用户输入“是”,则应用程序将为用户呈现附加嵌入音乐和图片资源的exe文件,则应用程序将生成富有游戏效果的迷宫并进行动态可视化;如果用户输入“否”,则应用程序将生成标准的迷宫并进行动态可视化;图4-1控制台输入例子界面1图4-2控制台输入例子界面2

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com