C语言迷宫问题大全,c语言写的迷宫问题
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
下面是程序
#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语言写的迷宫问题相关推荐
- c 语言整人代码大全,C 语言整人代码大全.doc
C 语言整人代码大全 C 语言整人代码大全 WScript.Echo("嘿,谢谢你打开我哦,我等你很久 拉!"&TSName) WScript.Echo("你是可 ...
- C语言迷宫问题大全,c语言实现迷宫问题
<c语言实现迷宫问题>由会员分享,可在线阅读,更多相关<c语言实现迷宫问题(21页珍藏版)>请在人人文库网上搜索. 1.数据结构试验迷宫问题(一)基本问题1.问题描述这是心理学 ...
- 简单c语语言游戏教案大全,大班语言活动教案大全简单趣味
从小培养幼儿学说普通话的兴趣.同时家长应注意用规范的语言来与幼儿进行日常交谈. 以下是小编精心收集整理的幼儿园大班语言活动方案,下面小编就和大家分享,来欣赏一下吧. 幼儿园大班语言活动方案1 活动目标 ...
- c语言交朋友问题大全,交朋友语言教案
基本数据类型 一.概述 本节课将介绍C语言的基本数据类型,课时时间为40分钟.数据是程序的必要组成部分,也是程序处理的对象.运算是对数据进行加工的过程.C语言中的数据既有常量和变量之分,又有类型之别. ...
- c语言编程代码大全(c语言简单代码大全)
html代码和c语言等编程语言有什么联系吗? HTML叫做超文本标记语言(标准通用标记语言下的一个应用)或超文本链接标示语言,是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言. 怎么修改C语 ...
- c语言迷宫代码大全,C语言---迷宫游戏 代码
//10行10列的数组地图 char map[10][10] = { //10行10列的数组地图 {'#','#','#','#','#','#','#','#','#','#'},//0 {'#', ...
- c语言入门函数大全,C语言函数大全(适合初学者).doc
C语言函数大全(适合初学者)C语言函数大全(适合初学者) A 函数名: abort 功 能: 异常终止一个进程 用 法: void abort(void); 程序例: #include #includ ...
- c语言笔试面试大全,C语言笔试面试题大全.doc
表示已有答案 表示没有处理 表示答案不确定 C++笔试题 1.多态类中的虚函数表是Compile-Time,还是Run-Time时建立的? 答案:虚拟函数表是在编译期就建立了,各个虚拟函数这时被组织成 ...
- c语言笔试题大全,C语言面试题汇总(持续更)
笔者最近在找工作,因此对应聘C/C++嵌入式开发工程师容易被问到,或者经常搞不清楚的问题做一个汇总,也希望能对找工作的小伙伴起到帮助参考的作用.本篇集中于C语言方面的面试题目. 因为是自己总结的,可能 ...
最新文章
- iOS 自定义转场动画初探
- xib与nib的区别
- Java的字符串常量池
- 维秘天使超模美女Romee Strijd性感运动照片
- [原创]JMeter初次使用总结
- 图像处理的傅里叶变换理解
- 使用wireshark抓取3G包
- linux 中断 c语言程序,linux驱动之中断处理过程C程序部分
- 12平键标准尺寸规格表_郑州花纹板加工规格尺寸表
- vscode中文_VS Code 中文社区正式成立啦!VS Code Day 圆满落幕!
- android studio | openGL es 3.0增强现实(AR)开发汇总
- 用过滤器来解决JSP中文乱码问题
- 2020.9.24--PS--魔术棒工具、羽化、色彩范围
- 基于3线spi通信的oled(cubemx图形化编程软件)
- ResourceBundle的基本使用
- SQL- join多表关联
- 以CRM系统为案例讲解数据分析(重要性介绍及分析方法)
- 使用二手书App的心得
- 【汇正财经】股票上市交易的费用都有哪些?
- HTML有2种路径的写法:绝对路径和相对路径