| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 580 人关注过本帖
标题:以二维数组创建的迷宫矩阵,怎么得不到理想的界面呢?哪里有错,高手指点啊 ...
只看楼主 加入收藏
怀特411
Rank: 1
等 级:新手上路
帖 子:13
专家分:2
注 册:2011-6-24
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:5 
以二维数组创建的迷宫矩阵,怎么得不到理想的界面呢?哪里有错,高手指点啊!!
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
void mg(int m,int n)    //创建迷宫并在四周设障碍
{int i,j;
int a[10][10];
for(i=0,j=0;i<m+2;i++)   
    a[i][j]=1;
for(i=0,j=n+1;i<m+2;i++)
    a[i][j]=1;
for(j=0,i=0;j<n+2;j++)
    a[i][j]=1;
for(j=0,i=m+1;j<n+1;j++)
    a[i][j]=1;
printf("请以行为单位输入迷宫数列:\n");
for(i=1;i<=m;i++)
 for(j=1;j<=n;j++)
   scanf("%d",&a[i][j]);
}
void print(int a[10][10],int m, int n)//打印迷宫
{int i,j;
  for(i=0;i<=m;i++)
  { for(j=0;j<=n;j++)
    {printf("%5d",a[i][j]);}
    printf("\n");
  }
}
void main()
{
int r,c;
int a[10][10];
printf("请输入迷宫矩阵的行数,列数:\n");
scanf("%d,%d",&r,&c);
mg(r,c);
printf("迷宫矩阵如下:\n");
print(a,r,c);
}
图片附件: 游客没有浏览图片的权限,请 登录注册
搜索更多相关主题的帖子: void include 
2011-06-24 20:21
voidx
Rank: 12Rank: 12Rank: 12
来 自:邯郸
等 级:火箭侠
帖 子:1250
专家分:3538
注 册:2011-4-7
收藏
得分:5 
程序代码:
void mg(int m,int n)    //创建迷宫并在四周设障碍
{int i,j;
int a[10][10];          // 你把迷宫地图读到 mg() 的本地数组变量中,残念了
for(i=0,j=0;i<m+2;i++)   
    a[i][j]=1;
for(i=0,j=n+1;i<m+2;i++)
    a[i][j]=1;
for(j=0,i=0;j<n+2;j++)
    a[i][j]=1;
for(j=0,i=m+1;j<n+1;j++)
    a[i][j]=1;
printf("请以行为单位输入迷宫数列:\n");
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
   scanf("%d",&a[i][j]);
}


另外,print() 也要修改,楼主自己找找
2011-06-24 20:30
怀特411
Rank: 1
等 级:新手上路
帖 子:13
专家分:2
注 册:2011-6-24
收藏
得分:0 
回复 2楼 voidx
请问能不能帮我改一下啊?急需啊。。。。。搞一下午了555555555就是想要输出一个小迷宫
2011-06-24 20:32
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:5 
程序代码:
#include <stdio.h>

void Input(int a[][50],int m,int n)
{
    int i,j,k;
    for(i = 0;i<m;i++)
    {
        for(j = 0;j<n;j++)
        {
            if(i == 0 || j == 0 || i == n-1 || j == n-1)
            {
                a[i][j] = 1;
            }
            else
            {
                scanf("%d",&a[i][j]);
            }
        }
    }
}

int main()
{
    int matix[50][50] = {0};
    int i,j,k;
    int m,n;
    scanf("%d %d",&m,&n);
    Input(matix,m,n);
    for(i = 0;i<m;i++)
    {
        for(j = 0;j<n;j++)
        {
            printf("%d ",matix[i][j]);
        }
        printf("\n");
    }
    return 0;
}
墙壁不输入

                                         
===========深入<----------------->浅出============
2011-06-24 20:41
voidx
Rank: 12Rank: 12Rank: 12
来 自:邯郸
等 级:火箭侠
帖 子:1250
专家分:3538
注 册:2011-4-7
收藏
得分:0 
程序代码:
#include <stdio.h>

void mg(int a[10][10], int m, int n)    //创建迷宫并在四周设障碍
{
    int i, j;
    for (i = 0, j = 0; i < m + 2; i++)
        a[i][j] = 1;
    for (i = 0, j = n + 1; i < m + 2; i++)
        a[i][j] = 1;
    for (j = 0, i = 0; j < n + 2; j++)
        a[i][j] = 1;
    for (j = 0, i = m + 1; j < n + 1; j++)
        a[i][j] = 1;
    printf("Give me the map\n");
    for (i = 1; i <= m; i++)
        for (j = 1; j <= n; j++)
            scanf("%d", &a[i][j]);
}
void print(int a[10][10], int m, int n) //打印迷宫
{
    int i, j;
    for (i = 0; i <= m + 1; i++) {
        for (j = 0; j <= n + 1; j++) {
            printf("%5d", a[i][j]);
        }
        printf("\n");
    }
}
void main()
{
    int r, c;
    int a[10][10];
    printf("Give me r & c\n");
    scanf("%d,%d", &r, &c);
    mg(a, r, c);
    printf("It's like this\n");
    print(a, r, c);
}
2011-06-24 20:54
我不过去
Rank: 2
等 级:论坛游民
帖 子:18
专家分:42
注 册:2011-6-11
收藏
得分:0 
老杨,相当给力
2011-06-25 16:52
快速回复:以二维数组创建的迷宫矩阵,怎么得不到理想的界面呢?哪里有错,高手指 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018100 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved