L('ω')┘脏脏包└('ω')」 2023-07-19 08:59 采纳率: 0%
浏览 43

关于#c++#的问题,请各位专家解答!

为什么下面的代码修改m和n的值一大就报错

ailed to execute "C:\Users\Administrator\Desktop\未命名4.exe":Error 0: 操作成功完成。

了呀

有没da lao解释一下哪里错了

#include<bits/stdc++.h>
using namespace std;
 
//迷宫大小(必须奇数) 
#define m 11
#define n 11
//构成
#define player '!'
#define wall '#'
#define kong ' ' 
//起点(必须偶数且在迷宫边缘)
#define X 2
#define Y 2
 
//迷宫内 
#define WALL -1
#define KONG 2
 
struct play_er{int x,y;}start;
int dt[1010][1010];
int fx[5][5]={{2,0},{-2,0},{0,2},{0,-2}};
int zj[5][5]={{1,0},{-1,0},{0,1},{0,-1}};
bool v[1010][1010]={0};
 
void init()
{
    start.x=X,start.y=Y;
    memset(dt,WALL,sizeof dt);
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            if(i==1||i==n||j==1||j==m) dt[i][j]=WALL;
            if(i%2==0&&j%2==0) dt[i][j]=KONG;
            else dt[i][j]=WALL;
        }
    }
    dt[X][Y]=KONG;
}
 
void dfs(int x,int y)
{
    bool f[5]={0};
    while(1)
    {
        if(f[0]&&f[1]&&f[2]&&f[3]) return ;
        int r=rand()%4;
        int nx=fx[r][0],ny=fx[r][1],zx=zj[r][0],zy=zj[r][1];
        if(x+nx<1||x+nx>n||y+ny<1||y+ny>m) {f[r]=1;continue;}//return ;
        if(dt[x+zx][y+zy]!=WALL||v[x+zx][y+zy]||v[x+nx][y+ny]) {f[r]=1;continue;}//return ;
        f[r]=1;
        dt[x+zx][y+zy]=KONG;
        v[x+zx][y+zy]=v[x+nx][y+ny]=1;
        dfs(x+nx,y+ny);
    }
    return ;
}
 
int main()
{
    init();
    srand(time(NULL));
    dfs(X,Y);
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            if(i==start.x&&j==start.y) printf("%c",player);
            else if(dt[i][j]==KONG) printf("%c",kong);
            else printf("%c",wall);
        }
        printf("\n");
    }
    return 0;
}

  • 写回答

4条回答 默认 最新

  • 快乐鹦鹉 2023-07-19 09:08
    关注

    你改到多大啊?

    评论

报告相同问题?

问题事件

  • 创建了问题 7月19日

悬赏问题

  • ¥15 nginx中的CORS策略应该如何配置
  • ¥30 信号与系统实验:采样定理分析
  • ¥100 我想找人帮我写Python 的股票分析代码,有意请加mathtao
  • ¥20 Vite 打包的 Vue3 组件库,图标无法显示
  • ¥15 php 同步电商平台多个店铺增量订单和订单状态
  • ¥15 关于logstash转发日志时发生的部分内容丢失问题
  • ¥17 pro*C预编译“闪回查询”报错SCN不能识别
  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题