该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

下面是程序

#include

#define OVERFLOW -2

#define ERROR 0

#define NULL 0

#define true 1

#define TRUE 1

#define false 0

#define FALSE 0

#define STACK_INIT_SIZE 100

#define STACKINCREMENT 10

#include

#include

/*

初始化迷宫,1表示通道,0表示墙

*/

typedef struct MStackElem

{

int x;

int y;

int val;

}MStackElem;

typedef struct {

MStackElem * base;

MStackElem * top;

int stackSize;

}MStack;

void initStack(MStack *s) {

s->base = (MStackElem *)malloc(STACK_INIT_SIZE * sizeof(MStackElem));

if (!s->base) {

printf("in initStack()...Failed to initalize the MStack ,no enough space! exit now. ");

exit(OVERFLOW);

}

s->top = s->base;

s->stackSize = STACK_INIT_SIZE;

}

void push(MStack *s,MStackElem e) {

if (s->top - s->base >= s->stackSize) {

s->base = (MStackElem *)realloc(s->base, (STACK_INIT_SIZE+STACKINCREMENT) * sizeof(MStackElem));

if (!s->base) {

printf("in push()...Failed to realloc the MStack ,no enough space! exit now. ");

exit(OVERFLOW);

}

s->top = s->base + s->stackSize;

s->stackSize += STACKINCREMENT;

}

*(s->top++) = e;

}

MStackElem getTop(MStack *s) {

if (s->top == s->base) {

printf("in getTop(),empty stack! exit now. ");

exit(ERROR);

}

else {

return *(s->top - 1);

}

}

void pop(MStack *s) {

if (s->top == s->base) {

printf("in pop(),empty stack! exit now. ");

exit(ERROR);

}

else {

--(s->top);

}

}

MStack realPath,path;

int unPass(MStack path,MStackElem cur) {

int flag = 1;

while(path.top != path.base)

{

MStackElem e = *(path.top - 1);

if (e.x == cur.x&& e.y == cur.y)

C语言迷宫问题大全,c语言写的迷宫问题相关推荐

  1. c 语言整人代码大全,C 语言整人代码大全.doc

    C 语言整人代码大全 C 语言整人代码大全 WScript.Echo("嘿,谢谢你打开我哦,我等你很久 拉!"&TSName) WScript.Echo("你是可 ...

  2. C语言迷宫问题大全,c语言实现迷宫问题

    <c语言实现迷宫问题>由会员分享,可在线阅读,更多相关<c语言实现迷宫问题(21页珍藏版)>请在人人文库网上搜索. 1.数据结构试验迷宫问题(一)基本问题1.问题描述这是心理学 ...

  3. 简单c语语言游戏教案大全,大班语言活动教案大全简单趣味

    从小培养幼儿学说普通话的兴趣.同时家长应注意用规范的语言来与幼儿进行日常交谈. 以下是小编精心收集整理的幼儿园大班语言活动方案,下面小编就和大家分享,来欣赏一下吧. 幼儿园大班语言活动方案1 活动目标 ...

  4. c语言交朋友问题大全,交朋友语言教案

    基本数据类型 一.概述 本节课将介绍C语言的基本数据类型,课时时间为40分钟.数据是程序的必要组成部分,也是程序处理的对象.运算是对数据进行加工的过程.C语言中的数据既有常量和变量之分,又有类型之别. ...

  5. c语言编程代码大全(c语言简单代码大全)

    html代码和c语言等编程语言有什么联系吗? HTML叫做超文本标记语言(标准通用标记语言下的一个应用)或超文本链接标示语言,是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言. 怎么修改C语 ...

  6. c语言迷宫代码大全,C语言---迷宫游戏 代码

    //10行10列的数组地图 char map[10][10] = { //10行10列的数组地图 {'#','#','#','#','#','#','#','#','#','#'},//0 {'#', ...

  7. c语言入门函数大全,C语言函数大全(适合初学者).doc

    C语言函数大全(适合初学者)C语言函数大全(适合初学者) A 函数名: abort 功 能: 异常终止一个进程 用 法: void abort(void); 程序例: #include #includ ...

  8. c语言笔试面试大全,C语言笔试面试题大全.doc

    表示已有答案 表示没有处理 表示答案不确定 C++笔试题 1.多态类中的虚函数表是Compile-Time,还是Run-Time时建立的? 答案:虚拟函数表是在编译期就建立了,各个虚拟函数这时被组织成 ...

  9. c语言笔试题大全,C语言面试题汇总(持续更)

    笔者最近在找工作,因此对应聘C/C++嵌入式开发工程师容易被问到,或者经常搞不清楚的问题做一个汇总,也希望能对找工作的小伙伴起到帮助参考的作用.本篇集中于C语言方面的面试题目. 因为是自己总结的,可能 ...

最新文章

  1. iOS 自定义转场动画初探
  2. xib与nib的区别
  3. Java的字符串常量池
  4. 维秘天使超模美女Romee Strijd性感运动照片
  5. [原创]JMeter初次使用总结
  6. 图像处理的傅里叶变换理解
  7. 使用wireshark抓取3G包
  8. linux 中断 c语言程序,linux驱动之中断处理过程C程序部分
  9. 12平键标准尺寸规格表_郑州花纹板加工规格尺寸表
  10. vscode中文_VS Code 中文社区正式成立啦!VS Code Day 圆满落幕!
  11. android studio | openGL es 3.0增强现实(AR)开发汇总
  12. 用过滤器来解决JSP中文乱码问题
  13. 2020.9.24--PS--魔术棒工具、羽化、色彩范围
  14. 基于3线spi通信的oled(cubemx图形化编程软件)
  15. ResourceBundle的基本使用
  16. SQL- join多表关联
  17. 以CRM系统为案例讲解数据分析(重要性介绍及分析方法)
  18. 使用二手书App的心得
  19. 【汇正财经】股票上市交易的费用都有哪些?
  20. HTML有2种路径的写法:绝对路径和相对路径

热门文章

  1. 我的世界java无限水_我的世界:一桶水=无限水?老MC才会的5种玩法,看看你做过几个?...
  2. Linux库知识大全
  3. 分布式技术原理(八):分布式存储
  4. 微信分享给朋友接口图片问题
  5. node.js 立即执行函数
  6. iphone 禁止系统屏保锁屏
  7. Win8.1 专业版
  8. 查找算法3——分块查找
  9. 语法精髓,10来节课补完初中,高中英语所有语法,彻底颠覆传统英语教育
  10. JXLS快速实现报表输出