国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C/C++實現貪吃蛇逐步運動效果

2020-01-26 14:37:39
字體:
來源:轉載
供稿:網友

本文實例為大家分享了C/C++實現貪吃蛇逐步運動效果的代碼,供大家參考,具體內容如下

主要使用結構數組和結構指針,再用easyx圖形庫進行的繪圖,以供討論和學習

#include <conio.h> //建立儲存蛇身的結構體struct snack{  int x;  int y; };//決定方向int fangxiang=3;//w=0,s=1,a=2,d=3// 按鍵變量char anjian=0;//調整坐標關系int tiaozheng(struct snack *a);// 移動函數int move(struct snack *a);//打印圖像int print(struct snack *a);//速度int v=10;  int main(){   initgraph(640, 480);     struct snack na[10] ={0};  while(anjian!='q')  {    if(kbhit())    {      anjian=getch();      switch(anjian)      {           //w=0,s=1,a=2,d=3      case 'w':        if(fangxiang!=1)        fangxiang=0;        break;      case 's':        if(fangxiang!=0)        fangxiang=1;        break;      case 'a':        if(fangxiang!=3)        fangxiang=2;        break;      case 'd':        if(fangxiang!=2)        fangxiang=3;        break;      default:        break;      }           }        //清屏函數      cleardevice();      move(na);      print(na);      //避免程序運行過快      Sleep(60);      tiaozheng(na);       }   closegraph();       return 0;}   int tiaozheng(struct snack *a){    //從最后以個元素開始,依次進行坐標的傳遞         for(int i=9;i>0;i--)    {    a[i].x=a[i-1].x;    a[i].y=a[i-1].y;      }               return 0; } int print(struct snack *a){  for(int i=0;i<10;i++)  {    //進行繪圖    putpixel(a[i].x,a[i].y,RGB(100-10*i,255,100-10*i));    circle(a[i].x,a[i].y,5);  }  return 0;} int move(struct snack *a){    //w=0,s=1,a=2,d=3  switch(fangxiang)  {     //按鍵響應,并對超出界面的點進行重置      case 0:        a[0].y=a[0].y-v;        if(a[0].y<0)          a[0].y=480;        break;      case 1:        a[0].y=a[0].y+v;        if(a[0].y>480)          a[0].y=0;        break;      case 2:        a[0].x=a[0].x-v;        if(a[0].x<0)          a[0].x=640;        break;      case 3:        a[0].x=a[0].x+v;        if(a[0].x>640)          a[0].x=0;        break;      default:        break;  }  return 0;}

因時間有限,沒有考慮使用new來實現蛇身的長度的可控,僅使用初始值來實現,其次是未使用全局變量,整體比較凌亂,希望大家發現其他問題,歡迎指出!!!

以上就是本文的全部內容,希望對大家的學習有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 恩施市| 祁门县| 宁远县| 信宜市| 库尔勒市| 丹阳市| 屏东市| 呈贡县| 十堰市| 分宜县| 永清县| 上思县| 霸州市| 芦山县| 沙田区| 蛟河市| 大丰市| 昂仁县| 江川县| 噶尔县| 嘉鱼县| 汕尾市| 通许县| 许昌县| 广灵县| 肃宁县| 洪泽县| 咸阳市| 永和县| 浮梁县| 扎囊县| 德安县| 夏邑县| 洛阳市| 巴塘县| 利辛县| 西乌珠穆沁旗| 博罗县| 顺平县| 黑山县| 深圳市|