三、详细设计
1. 设计基本步骤:
1)定义一个8*8的数组,用于存放每次踩入的结点位置; 2)获取第一个踩入点; 3)调用findway()函数
Findway() 函数功能介绍:定义一个结点类型数组, 用于存放8个下一步可踩入结点的信息;期间调用 pathnum() 函数,该函数功能是记录所有下一个可踩 入结点的可执行路径数目);选择下一个结点中路径 最少的结点为下一个踩入的结点;在进入下一个踩 入点前,先保存该结点的信息并输出,然后依次寻 找下一个结点; 4)寻找最后一个结点,并赋给相应信息;
2. 具体代码如下:
#include<stdio.h> #include "conio.h" #include"stdlib.h" //#include <time.h>
#define M 8
int board[M][M]; //定义棋盘数组; // 内存区:
// 全局数据区:全局变量存储在内存的全局数据区,被默认初始化为0;
// 栈区 :存放 动态局部变量,函数参数,函数返回值等;
// 堆区 :比栈区分配内存慢,但堆区实现了动态分配; 如链表,二叉树等动态应用;
typedef struct direct {
int r,c,pathnum ; }dir ;
//用来计算当前位置可走的方向数目 int pathnum(int row,int cn) {
int a,b,count=0 ; a=row ; b=cn ;
//当前位置可选方向可以走通,则数目加一
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库《数据结构》课程设计报告——马踏棋盘(6)在线全文阅读。
相关推荐: