标题:多关卡地图推箱子游戏
只看楼主
卡卡西西里
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2020-3-7
结帖率:0
 问题点数:0 回复次数:11 
多关卡地图推箱子游戏

# include<stdio.h>
# include<conio.h>
# include<stdlib.h>
//调出地图
    void file(int map[14][16],int n,int flag) //n表示关卡数 ,flag定位位置
{
                                                                                                                                             
   
      
      FILE*fp=fopen("map.txt","r");
      if(fp==NULL)
      {
          printf("文件读取错误\n");
         
      }
      else
      for(int i=0 ;i<14 ;i++)
           {   for(int j=0 ;j<16 ;j++)
                {
                      map[i][j]=fgetc(fp);
                        
                }
             fgetc(fp);
          }
         
        
      
          if(n<=9)
       {
          flag=257*(n-1)+5;//1~9关
         
       }
      
       else
        {
         flag=257*9+258*(n-10)+6;//10~43关定位关卡数
         
         fseek(fp,flag,SEEK_SET);
       }
         
          fclose(fp) ;                                
            

  }
   



 //地图的生成
void drawmap(int map[14][16])

{   
     
     for( int i=0 ; i<14 ; i++)
     {   for( int j=0 ; j<16 ; j++)
         
      {   
               
           switch (map[i][j])
        {      
           case '0':
                           printf("  ");//空地 打入两个空格
                           break;
               case '1':
                            printf("■") ;//墙
                            break;
               case '2':
                            printf("  ");//内部空地 打入两个空格
                            break;
               case '3':
                         printf("×");//目的地
                         break;
            case '4':
                          
                          printf("◎");//箱子
                          break;
            case '5':
                         printf("☆");//箱子推到目的地后的显示
                         break;
            case '6':
                         printf("♀");//小人
                         break;
           }
           
         
         
     }      printf("\n");
             }
            
            
      
}
   
   

int main()
{    int N,FLAG;
     int MAP[14][16];
     printf("please input your level:%d\n");
     scanf("%d",&N);
     if(N>0&&N<=43)
     {
         file(MAP,N,FLAG);
         drawmap(MAP);
     }
      
     else
     printf("Game Over!\n");
   
   
    return 0;
   
   
   
}
搜索更多相关主题的帖子: map printf int flag break 
2020-03-07 12:02
卡卡西西里
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2020-3-7
得分:0 
麻烦帮我看一下为什么总是输入关卡数却总是在第一关
2020-03-07 12:03
shuidaan
Rank: 1
来 自:宁波
等 级:新手上路
帖 子:1
专家分:0
注 册:2020-3-7
得分:0 
新手。想请教一下  你们用什么编辑工具,来写C++  ,请指教。新手

学习复读书
2020-03-07 14:35
xianfajushi
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:8
帖 子:527
专家分:690
注 册:2007-9-8
得分:0 
没有提供"map.txt"文件无法测试
2020-03-07 16:42
xianfajushi
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:8
帖 子:527
专家分:690
注 册:2007-9-8
得分:0 
自己开贴,莫在别人贴里面问
以下是引用shuidaan在2020-3-7 14:35:09的发言:

新手。想请教一下  你们用什么编辑工具,来写C++  ,请指教。新手

2020-03-07 16:43
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
得分:0 
回复 3楼 shuidaan
C4driod.......今天刚下的电脑端,用的code::block

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-03-07 20:42
return_0
Rank: 8Rank: 8
来 自:五维空间
等 级:禁止访问
威 望:3
帖 子:512
专家分:838
注 册:2020-1-28
得分:0 
用devc++

2020-03-08 15:39
return_0
Rank: 8Rank: 8
来 自:五维空间
等 级:禁止访问
威 望:3
帖 子:512
专家分:838
注 册:2020-1-28
得分:0 
你都没把map文件给出来,我们懵了。

2020-03-08 15:48
倾听心跳
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:39
专家分:153
注 册:2016-6-22
得分:0 
你调用的地图生成函数只会打印第一关的
2020-03-25 09:26
zwh2011
Rank: 2
等 级:论坛游民
帖 子:37
专家分:22
注 册:2022-6-27
得分:0 
map.txt在哪里
2022-06-27 21:35



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-499613-1-1.html




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

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