m0_63360850 2022-10-11 15:43 采纳率: 100%
浏览 18
已结题

数据结构 迷宫(栈)无法运行

#include<malloc.h>
#include<stdbool.h>
#define M 4
#define N 4
typedef struct
{
int x;
int y;
int fx;//0-3代表四个方向
}box;//压入栈中的数据类型
typedef struct
{
int incx;
int incy;
}direction;//代表方向的结构体类型

int maze[6][6]=
{
{1,1,1,1,1,1},
{1,0,0,0,0,1},
{1,1,0,1,1,1},
{1,0,0,0,1,1},
{1,1,1,0,0,1},
{1,1,1,1,1,1}
};//迷宫二维数组
direction Dir[4]=
{
{0,1},
{1,0},
{0,-1},
{-1,0}
};//探测方向二维数组

typedef struct node//栈的节点结构体
{
box data;
struct node* pNext;
}Node,*Pnode;

typedef struct stack//链栈结构体
{
Pnode pButtom;
Pnode pTop;
}Stack,*Pstack;
Pstack initsta()//初始化栈
{
Pstack s=(Pstack)malloc(sizeof(Stack));
Pnode phead=(Pnode)malloc(sizeof(Node));
s->pButtom=phead;
s->pTop=phead;
return s;
}
int push(Pstack s,box key)//压栈
{
Pnode pNew=(Pnode)malloc(sizeof(Node));
pNew->pNext=s->pTop;
s->pTop=pNew;
pNew->data.x=key.x;
pNew->data.y=key.y;
pNew->data.fx=key.fx;
return 0;
}
box pop(Pstack s)//出栈
{
box tmp;
if(s->pTop!=s->pButtom)
{
Pnode pTmp=s->pTop->pNext;

   tmp.x=s->pTop->data.x;
   tmp.y=s->pTop->data.y;
   tmp.fx=s->pTop->data.fx;
   free(s->pTop);
   s->pTop=pTmp;
}
return tmp;

}

bool empty(Pstack s)//判断栈空
{
if(s->pTop==s->pButtom)
return true;
else
return false;
}

无法运行

报错内容:Id returned 1 exit status

  • 写回答

1条回答 默认 最新

  • 伍六七0804 2022-10-11 16:29
    关注

    你这个没有main函数所以才报这个错。自己写个main函数然后调用你这里面的函数就行

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月23日
  • 已采纳回答 10月15日
  • 创建了问题 10月11日

悬赏问题

  • ¥15 #Qt Transform setTransform()在鼠标拖动移动视角是一致在原地不动,无法变换视角(细微观察似乎视图有在原地抖动),无法变换视角(细微观察似乎视图有在原地抖动)
  • ¥50 如何利用无人机拍摄的数码照片测量鸟卵的长短径
  • ¥100 github贡献者给与奖励
  • ¥15 使用DS18B20+ESP8266获取温度数据返回-127.00
  • ¥15 odbc代码新增sqlserver数据源
  • ¥15 求一个USB指纹识别的驱动
  • ¥15 wps中工作表与工作表之间怎么汇总信息?
  • ¥50 请教Windows server 2012 R2的DCOM配置问题
  • ¥15 adasis v3中LaneConnectivity
  • ¥15 stc -isp烧录时显示通信超时