纯C语言写的拼图游戏源码

纯C语言写的拼图游戏源码,第1张

概述纯C语言写的拼图游戏源码

下面是内存溢出 jb51.cc 通过网络收集整理的代码片段。

内存溢出小编现在分享给大家,也给大家做个参考。

#include<stdio.h>  #include<stdlib.h>  #include<time.h>  #include<conio.h>      int step=0;      voID map()//游戏菜单函数。  {   printf("▇▇▇▇▇▇▇▇▇▇▇▇▇▇\n");      printf("█   拼 图 游 戏       █\n");      printf("█      1.   3×3         █\n");      printf("█      2.   4×4         █\n");      printf("█      3.   5×5         █\n");      printf("█      4.   退出         █\n");      printf("▇▇▇▇▇▇▇▇▇▇▇▇▇▇\n");  }      voID fun(int *a,int t,int m,int r)  {      int i;      int g;          for(i=0;i<m;i++)      {          if(i%r==(r-1)&&(i+t)%r==0)//让数组不能跨行转换。              continue;          if(i%r==0&&(i+t)%r==(r-1))              continue;          if(a[i+t]==0 && (i+t)>=0 && (i+t)<m)              {              g=a[i];              a[i]=a[i+t];              a[i+t]=g;              step++;              return ;          }      }  }          voID move(int *a,int r)  {//上下左右移动函数。      char ch;      int i,j;          while(ch=getch())      {          system("cls");              if(ch=='w')          {             i=-r;              fun(a,i,m,r);          }          else if(ch=='s')          {              i=r;              fun(a,r);          }          else if(ch=='a')          {              i=-1;              fun(a,r);          }          else if(ch=='d')          {              i=1;              fun(a,r);          }          else if(ch=='4')          {              printf("您已退出游戏,请下次再玩!\n");              exit(0);          }              for(i=0;i<m;i++)          {              if(a[i]==0)                  printf("    ");              else                  printf("%2d  ",a[i]);              if((i+1)%r==0)              putchar(10);          }          printf("共走:%d步!\n",step);      }  }      voID map_x(int m,int r)  {      int i=1,j,a[25],n;      srand(time(NulL));      printf("拼图游戏开始了:\n");      while(i<m)      {          n=1+rand()%(m-1);          for(j=1;j<i;j++)          {              if(n==a[j])                  break;          }          if(j==i)          {              a[i]=n;              i++;          }      }      a[0]=0;      for(i=0;i<m;i++)      {          if(a[i]==0)              printf("    ");          else              printf("%2d  ",a[i]);          if((i+1)%r==0)              putchar(10);      }      printf("共走:%d步!\n",step);      move(a,r);  }          int main()  {      int i,n;      char ch;      map();//显示菜单。      printf("请选择所玩游戏的级别:\n");      ch=getch();      while(ch!='1' && ch!='2' && ch!='3' &&ch!='4')      {          printf("输入有误,请重新输入:\n");          ch=getch();      }          switch(ch)      {          case '1':               map_x(9,3);              break;           case '2':              map_x(16,4);              break;          case '3':              map_x(25,5);              break;          case '4':              printf("您已退出游戏,请下次再玩!\n");              exit(0);              break;      }      return 0;  }          //对于确定的循环一般用for;而不确定的循环则用while.    

以上是内存溢出(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

总结

以上是内存溢出为你收集整理的纯C语言写的拼图游戏源码全部内容,希望文章能够帮你解决纯C语言写的拼图游戏源码所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1232511.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存