C语言贪吃蛇游戏部分源码

                    

    

C语言贪吃蛇游戏部分源码

#includestdio.h

#includestdlib.h

#includeconio.h//consoleinputoutputgetch()

#includewindows.h

typedefstructbody

{

  COORDpos;//该蛇身所处的坐标coordinate

  structbody*next;//下一个蛇身

  structbody*prev;//前一个蛇身

}BODY,*PBODY;

typedefenum{UP,DOWN,LEFT,RIGHT}Direct;//方向枚举

//画出贪吃蛇移动区域的边框

voidDrawBorder()

{

  inti,j;

  for(i=0;i15;++i)//魔数

  {

    for(j=0;j15;++j)

    {

      if(i==0

i==14)//第一行或最后一行SHIFT+

        printf(■);

      elseif(j==0

j==14)//第一列或最后一列

        printf(■);

      else

        printf();

    }

    printf(\n);//打印完一行之后换行

  }

}

//全局变量

HANDLEhout;

BODYhead={0};//头节点,它的下一个节点就是我们的蛇头

PBODYptail=NULL;//尾指针,它指向蛇的尾巴

Directdir=RIGHT;//蛇的方向,初始时为向右

//产生一个蛇头

voidInitialSnake(intx,inty)

{

  COORDpos={x,y};

  ptail=(PBODY)calloc(1,sizeof(BODY));

  //malloc分配的内存空间,里面的数据是没有经过初始化的

  //calloc分配内存时,会将里面全部赋值为0

  ptail-pos=pos;

  head.next=ptail;

  ptail-prev=head;

  SetConsoleCursorPosition(hout,pos);//把光标定位到蛇身指定的坐标处

  printf(※);//打印蛇身

}

intmain()

{

  hout=GetStdHandle(STD_OUTPUT_HANDLE);

  DrawBorder();

  InitialSnake(4,6);

  

  system(pause);

  return0;

}

          

再多的文字也表达不完我们要学的东西,所以希望需要学习的朋友可以直接到腾讯课堂看视频学习。双击原文链接,直接转入视频直播地址,每天晚上八点开始语音解答,每天晚上九点开始授课;遇到问题可以加我们的学习群;群里面找老鸟给你们解答C/C++疑难杂题要视屏课程,要学习资源可以加QQ群群文件下载

            

预览时标签不可点收录于合集#个上一篇下一篇

转载请注明:http://www.aierlanlan.com/cyrz/83.html