<optgroup id="r9hwm"></optgroup><nav id="r9hwm"><label id="r9hwm"></label></nav>

    <tt id="r9hwm"><tr id="r9hwm"></tr></tt>
  1. 
    
  2. <optgroup id="r9hwm"><samp id="r9hwm"><dl id="r9hwm"></dl></samp></optgroup>

  3. <optgroup id="r9hwm"><samp id="r9hwm"><dl id="r9hwm"></dl></samp></optgroup>

        1. <listing id="r9hwm"></listing>
          <delect id="r9hwm"></delect>
          <optgroup id="r9hwm"><samp id="r9hwm"><ol id="r9hwm"></ol></samp></optgroup>

          貪吃蛇代碼簡短代碼

          1.簡單的能用vc貪吃蛇的c語言代碼,就是最簡單的,那些音樂,顏色都

          #include #include #include #define MAZE_SIZE (15)#define FPS (3)#define SBC 'O'#define BGC ' '#define WALL (1)#define BODY (4)#define FOOD (8)void Initialize();int Update();void Present();void CleanUp();int main(){ printf("Press any key to start。

          "); do { Initialize(); _getch(); while (Update()) Present(); CleanUp(); printf(" Game Over!\n"); printf("Press 'G' to continue。"); } while (_getch() == 'g'); return 0;}int HeadDirection = 1;int KeyMapping[256];int HasFood = 0;int DisplayMaze[MAZE_SIZE][MAZE_SIZE];int CollisionMaze[MAZE_SIZE][MAZE_SIZE];struct SnakeBody{ int x, y; struct SnakeBody *next;};SnakeBody SnakeHead;int SnakeLength = 1;void InitializeMaze();void InitializeKeyMapping();void InitializeSnake();void CheckKeyboard();void ExtendLength(int x, int y);void MoveBody(int x, int y);int UpdateSnake();void GenerateFood();void Initialize(){ srand(time(0)); InitializeMaze(); InitializeKeyMapping(); InitializeSnake();}int Update(){ _sleep(1000 / FPS); CheckKeyboard(); if (!HasFood) GenerateFood(); return UpdateSnake();}void Present(){ int i, j; system("cls"); for (i = 0; i next; free(p); p = pp; } * = 0;}void InitializeMaze(){ int i, j; HasFood = 0; for (i = 0; i x = SnakeHead.x; psb->y = SnakeHead.y; psb->next = *; SnakeHead.x = x; SnakeHead.y = y; * = psb; CollisionMaze[SnakeHead.x][SnakeHead.y] = BODY; DisplayMaze[SnakeHead.x][SnakeHead.y] = SBC; HasFood = 0;}void MoveBody(int x, int y){ SnakeBody *psb = *; int ttx, tty; int tx = SnakeHead.x, ty = SnakeHead.y; SnakeHead.x = x, SnakeHead.y = y; CollisionMaze[x][y] = BODY; DisplayMaze[x][y] = SBC; while (psb) { ttx = psb->x, tty = psb->y; psb->x = tx; psb->y = ty; tx = ttx; ty = tty; psb = psb->next; } CollisionMaze[tx][ty] = 0; DisplayMaze[tx][ty] = BGC;}int UpdateSnake(){ int hx = SnakeHead.x, hy = SnakeHead.y; switch (HeadDirection) { case 1: hx--; break; case 2: hy++; break; case 3: hx++; break; case 4: hy--; break; } switch (CollisionMaze[hx][hy]) { case FOOD: ExtendLength(hx, hy); return 1; case WALL: case BODY: return 0; default: MoveBody(hx, hy); return 1; }}void GenerateFood(){ int cc = 0, rn = rand() % ((MAZE_SIZE - 2) * (MAZE_SIZE - 2) - SnakeLength); for (int i = 0; i 評論0 0 0。

          2.新手求c語言貪吃蛇源代碼,一定要有注釋,不要有光標移動函數之類

          yes=1; setcolor(11);/.y[0]=100;/*圖形驅動*/:\,這樣才可以讓蛇吃到*/ while(1)/*蛇的節數*/,壓ESC鍵結束*/.yes==0)/i+=10) { rectangle(50; food; void main(void) { Init(),左上角坐標為(50; int node; cleardevice();/!kbhit())/ int y;/*左邊*/*得分*/*開始畫面*/ void GamePlay(void); int y[N];*需要出現新食物*/*下邊*/ void GameOver(void),蛇自己移動身體*/ rectangle(i; DrawK();/,0活著,&gm.x[1]=110;i+=10)/,i+10.y=rand()%350+60,0表示已經存在食物*/.y%*=0; int gamespeed=50000!=0) food;*上邊*//.x%10; snake,59; } / }food!=0)/ { if(food;*食物的橫坐標*/ivoid Init(void),i+10);/.x++; } if(food,40);c.y++;/ } / //,1死亡*/*畫面上有食物了*/ // food,i; void Init(void) { int gd=DETECT;\*節數*/ while(food;*蛇頭*/*玩游戲具體過程*/ snake;*蛇移動方向*////*主函數*/*游戲速度自己調整*/ rectangle(601;/*圖形驅動*/ { food; { rectangle(i;);/ void PrScore(void).yes=0;tc&*=2;// food; struct Food { int x,0;*活著*/ void DrawK(void) { / int yes;*玩游戲具體過程*/*隨機數發生器*/ food; snake;*可以重復玩游戲;/*判斷是否要出現食物的變量*/ snake; void DrawK(void); }snake;/,key;*食物的縱坐標*//*/*開始畫面,右下角坐標為(610; while(food; snake,451;/," } for(i=40; PrScore(); } } /*右邊*/,i+10),THICK_WIDTH); setlinestyle(SOLID_LINE;*食物的結構體*/ struct Snake { int x[N],460).y[1]=100;*方向往右*/*畫圍墻*/*1表示需要出現新食物; /.yes==1)/*食物隨機出現后必須讓食物能夠在整格內;*輸出得分*/,49).x=rand()%400+60; void GamePlay(void) { randomize(); int life;*圖形驅動*/*setbkcolor(LIGHTGREEN); int direction;snake,610,460)的圍墻*///*圖形結束*//*在沒有按鍵的情況下; void Close(void);=450; int score=0; GamePlay(); { while(;*結束游戲*//snake;*輸出成績*/*設置線型*/ Close().x[0]=100;// for(i=50,gm;/貪吃蛇 #define N 200 #include #include #include #define LEFT 0x4b00 #define RIGHT 0x4d00 #define DOWN 0x5000 #define UP 0x4800 #define ESC 0x011b int i;i*畫面上有食物了就要顯示*/ initgraph(&gd,i;/* 蛇的生命。

          3.求單純C的貪吃蛇源代碼

          #define N 200

          #include <graphics.h>

          #include <stdlib.h>

          #include <dos.h>

          #define LEFT 0x4b00

          #define RIGHT 0x4d00

          #define DOWN 0x5000

          #define UP 0x4800

          #define ESC 0x011b

          int i,key;

          int score=0;/*得分*/

          .

          .

          .

          .

          /blog/*?id=15988

          4.貪吃蛇 java代碼

          主要用了*這個類:import *.*; import *.*; @SuppressWarnings("serial") public class MainClass extends JFrame { ControlSnake control; Toolkit kit; Dimension dimen; public static void main(String[] args) { new MainClass("my snake"); } public MainClass(String s) { super(s); control = new ControlSnake(); *usable(true); kit = *aultToolkit(); dimen = *eenSize(); add(control); setLayout(new BorderLayout()); setLocation(* / 3, * / 3);// **3,**3 setSize(FWIDTH, FHEIGHT); (*_ON_CLOSE); setResizable(false); setVisible(true); } public static final int FWIDTH = 315; public static final int FHEIGHT = 380; } import *.*; import *.*; import *.*; import *.*; import *; import *; @SuppressWarnings("serial") public class ControlSnake extends JPanel implements ActionListener { Random rand; ArrayList list, listBody; String str, str1; static boolean key; int x, y, dx, dy, fx, fy, flag; int snakeBody; int speed; public ControlSnake() { snakeBody = 1; str = "上下左右方向鍵控制 P鍵暫停。

          "; str1 = "現在的長度為:" + snakeBody; key = true; flag = 1; speed = 700; rand = new Random(); list = new ArrayList(); listBody = new ArrayList(); x = 5; y = 5; *(new Point(x, y)); *(*(0)); dx = 10; dy = 0; fx = *t(30) * 10 + 5;// 2 fy = *t(30) * 10 + 5;// 2 setBackground(*); setSize(new Dimension(318, 380)); final Timer time = new Timer(speed, this); *(); addKeyListener(new KeyAdapter() { public void keyPressed(KeyEvent e) { if (*Code() == 37) { dx = -10; dy = 0; } else if (*Code() == 38) { dx = 0; dy = -10; } else if (*Code() == 39) { dx = 10; dy = 0; } else if (*Code() == 40) { dx = 0; dy = 10; } else if (*Code() == 80) { if (flag % 2 == 1) { *(); } if (flag % 2 == 0) { *(); } flag++; } } }); } public void paint(Graphics g) { *or(*); *ct(0, 0, 400, 400); *or(*_GRAY); *ne(3, 3, 305, 3); *ne(3, 3, 3, 305); *ne(305, 3, 305, 305); *ne(3, 305, 305, 305); *or(*); for (int i = 0; i < *(); i++) { *ct(*(i).x, *(i).y, 9, 9); } *ct(x, y, 9, 9); *or(*); *ct(fx, fy, 9, 9); *or(*_GRAY); str1 = "現在的長度為:" + snakeBody; *ring(str, 10, 320); *ring(str1, 10, 335); } public void actionPerformed(ActionEvent e) { x += dx; y += dy; if (makeOut() == false) { *ssageDialog(null, "重新開始。

          "); speed = 700; snakeBody = 1; x = 5; y = 5; *(); *(new Point(x, y)); *(); *(*(0)); dx = 10; dy = 0; } addPoint(x, y); if (x == fx && y == fy) { speed = (int) (speed * 0.8);//速度增加參數 if (speed < 200) { speed = 100; } fx = *t(30) * 10 + 5;// 2 fy = *t(30) * 10 + 5;// 2 snakeBody++;// 2 } // 2 repaint(); } public void addPoint(int xx, int yy) {// 動態的記錄最新發生的50步以內的移動過的坐標// 并畫出最新的snakeBody if (*() < 100) {//蛇身長度最長為100 *(new Point(xx, yy)); } else { *(0); *(new Point(xx, yy)); } if (snakeBody == 1) { *(0); *(0, *(*() - 1)); } else { *(); if (*() < snakeBody) { for (int i = *() - 1; i > 0; i--) { *(*(i)); } } else { for (int i = *() - 1; *() < snakeBody; i--) { *(*(i)); } } } } public boolean makeOut() { if ((x < 3 || y < 3) || (x > 305 || y > 305)) { return false; } for (int i = 0; i < *() - 1; i++) { for (int j = i + 1; j < *(); j++) { if (*(i).equals(*(j))) { return false; } } } return true; } }。

          5.簡單貪吃蛇C語言程序

          #include #include #include #define LEFT 0x4b00 #define RIGHT 0x4d00 #define DOWN 0x5000 #define UP 0x4800 #define ESC 0x011b #define N 200/*蛇的最大長度*/#define M 3 /*食物數量*/#define F 2 /*毒花數量*/int i,j,key;int k=0;int a=0;int map[20][20];/*障礙地圖*/int score=200;/*得分*/int gamespeed;/*游戲速度自己調整*/int level=1; /*游戲級別*/struct Food { int x;/*食物的橫坐標*/ int y;/*食物的縱坐標*/ int yes;/*判斷是否要出現食物的變量*/ }food[M];/*食物的結構體*/struct Flower{ int x; int y; int yes;}flower[F]; /*毒花的結構體*/struct Lucky{ int x; int y; int yes;}lucky;/*救命稻草結構體*/struct Snake { int x[N]; int y[N]; int node;/*蛇的節數*/ int direction;/*蛇移動方向*/ int life;/* 蛇的生命,0死亡*/}snake;void Init(void);/*圖形驅動*/ void Close(void);/*圖形結束*/ void DrawK(void);/*開始畫面*/ void GameOver(void);/*結束游戲*/ void GamePlay(void);/*玩游戲具體過程*/ void PrScore(void);/*輸出成績*/ /*主函數*/ void main(void) { Init();/*圖形驅動*/ DrawK();/*開始畫面*/ GamePlay();/*玩游戲具體過程*/ Close();/*圖形結束*/ } /*圖形驅動*/ void Init(void) { int gd=DETECT,gm; initgraph(&gd,&gm,"c:\\tc"); cleardevice(); } /*開始畫面,左上角坐標為(50,40),右下角坐標為(595,460)的圍墻*/void DrawK(void) { setcolor(RED); rectangle(50,40,595,460);}/*玩游戲具體過程*/ void GamePlay(void) { int ii,jj; randomize(); for(i=0;i=3&&a==0){ for(ii=0;ii<20;ii++) for(jj=0;jj<20;jj++) { if(ii==0||ii==9||ii==19) map[ii][jj]=1; } a=1;} if(level>=3&&*<=5&&k==0) *=1; if(*==1) { lucky.x=rand()%400+60; lucky.y=rand()%350+60; while(lucky.x%10!=0) lucky.x++; while(lucky.y%10!=0) lucky.y++; for(ii=0;ii<20;ii++) for(jj=0;jj<20;jj++) if(map[ii][jj]) { while(lucky.x==200+jj*10&&lucky.y==100+ii*10) lucky.x+=10; /*不讓救命稻草在內墻上出現*/ } for(ii=0;ii0;i--)/*蛇的每個環節往前移動,也就是貪吃蛇的關鍵算法*/ { snake.x[i]=snake.x[i-1]; snake.y[i]=snake.y[i-1]; } /*1,2,3,4表示右,左,上,下四個方向,通過這個判斷來移動蛇頭*/switch(*ion) { case 1:snake.x[0]+=10;break; case 2:snake.x[0]-=10;break; case 3:snake.y[0]-=10;break; case 4:snake.y[0]+=10;break;} for(i=3;i<*;i++)/*從蛇的第四節開始判斷是否撞到自己了,因為蛇頭為兩節,第三節不可能拐過來*/ { if(snake.x[i]==snake.x[0]&&snake.y[i]==snake.y[0]) { GameOver();/*顯示失敗*/ *=0; break; } }if(snake.x[0]<55||snake.x[0]>595||snake.y[0]<45|| snake.y[0]>455)/*蛇是否撞到外墻壁*/{ GameOver();/*本次游戲結束*/ *=0; /*蛇死*/}for(i=0;i<20;i++){ for(j=0;j<20;j++) { if(map[i][j]) { if(snake.x[0]==(200+j*10)&&snake.y[0]==(100+i*10)) /*蛇是否撞到內墻壁*/ { *--;/*生命值減1*/ scor。

          6.求一段JAVA編寫的貪吃蛇小程序源代碼

          用MVC方式實現的貪吃蛇游戲,共有4個類。

          運行GreedSnake運行即可。主要是觀察者模式的使用,我已經添加了很多注釋了。

          1、/** 程序名稱:貪食蛇* 原作者:BigF* 修改者:algo* 說明:我以前也用C寫過這個程序,現在看到BigF用Java寫的這個,發現雖然作者自稱是Java的初學者,* 但是明顯編寫程序的素養不錯,程序結構寫得很清晰,有些細微得地方也寫得很簡潔,一時興起之* 下,我認真解讀了這個程序,發現數據和表現分開得很好,而我近日正在學習MVC設計模式,* 因此嘗試把程序得結構改了一下,用MVC模式來實現,對源程序得改動不多。* 我同時也為程序增加了一些自己理解得注釋,希望對大家閱讀有幫助。

          */ package mvcTest;/*** @author WangYu* @version 1.0* Description:* * Create on :Date :2005-6-13 Time:15:57:16* LastModified:* History:*/ public class GreedSnake { public static void main(String[] args) { SnakeModel model = new SnakeModel(20,30); SnakeControl control = new SnakeControl(model); SnakeView view = new SnakeView(model,control);//添加一個觀察者,讓view成為model的觀察者 *erver(view);(new Thread(model)).start(); } }-------------------------------------------------------------2、package mvcTest;//* import *nt; import *tener;/*** MVC中的Controler,負責接收用戶的操作,并把用戶操作通知Model*/ public class SnakeControl implements KeyListener{ SnakeModel model; public SnakeControl(SnakeModel model){ * = model; } public void keyPressed(KeyEvent e) { int keyCode = *Code(); if (*g){ // 運行狀態下,處理的按鍵 switch (keyCode) { case *_UP:*Direction(*); break; case *_DOWN:*Direction(*); break; case *_LEFT:*Direction(*); break; case *_RIGHT:*Direction(*); break; case *_ADD:case *_PAGE_UP:*p(); break; case *_SUBTRACT:case *_PAGE_DOWN:*own(); break; case *_SPACE:case *_P:*PauseState(); break; default:} }// 任何情況下處理的按鍵,按鍵導致重新啟動游戲 if (keyCode == *_R || keyCode == *_S || keyCode == *_ENTER) { *(); } } public void keyReleased(KeyEvent e) { } public void keyTyped(KeyEvent e) { } }-------------------------------------------------------------3、/** */ package mvcTest;/*** 游戲的Model類,負責所有游戲相關數據及運行* @author WangYu* @version 1.0* Description:* * Create on :Date :2005-6-13 Time:15:58:33* LastModified:* History:*///* import *.*; import *; import *List; import *able; import *;/*** 游戲的Model類,負責所有游戲相關數據及運行*/ class SnakeModel extends Observable implements Runnable { boolean[][] matrix; // 指示位置上有沒蛇體或食物 LinkedList nodeArray = new LinkedList(); // 蛇體 Node food; int maxX; int maxY; int direction = 2; // 蛇運行的方向 boolean running = false; // 運行狀態 int timeInterval = 200; // 時間間隔,毫秒 double speedChangeRate = 0.75; // 每次得速度變化率 boolean paused = false; // 暫停標志 int score = 0; // 得分 int countMove = 0; // 吃到食物前移動的次數// UP and DOWN should be even// RIGHT and LEFT should be odd public static final int UP = 2; public static final int DOWN = 4; public static final int LEFT = 1; public static final int RIGHT = 3; public SnakeModel( int maxX, int maxY) { * = maxX; * = maxY; reset(); } public void reset(){ direction = *; // 蛇運行的方向 timeInterval = 200; // 時間間隔,毫秒 paused = false; // 暫停標志 score = 0; // 得分 countMove = 0; // 吃到食物前移動的次數// initial matirx, 全部清0 matrix = new boolean[maxX][]; for (int i = 0; i < maxX; ++i) { matrix[i] = new boolean[maxY]; *(matrix[i], false); }// initial the snake// 初始化蛇體,如果橫向位置超過20個,長度為10,否則為橫向位置的一半 int initArrayLength = maxX > 20 ? 10 : maxX / 2; *(); for (int i = 0; i < initArrayLength; ++i) { int x = maxX / 2 + i;//maxX被初始化為20 int y = maxY / 2; //maxY被初始化為30//nodeArray[x,y]: [10,15]-[11,15]-[12,15]~~[20,15]//默認的運行方向向上,所以游戲一開始nodeArray就變為:// [10,14]-[10,15]-[11,15]-[12,15]~~[19,15] *t(new Node(x, y)); matrix[x][y] = true; }// 創建食物 food = createFood(); matrix[food.x][food.y] = true; } public void changeDirection(int newDirection) {// 改變的方向不能與原。

          7.貪吃蛇 java代碼

          自己寫著玩的,很簡單,你試一試哦。

          主要用了*這個類:import *.*;import *.*;@SuppressWarnings("serial")public class MainClass extends JFrame { ControlSnake control; Toolkit kit; Dimension dimen; public static void main(String[] args) { new MainClass("my snake"); } public MainClass(String s) { super(s); control = new ControlSnake(); *usable(true); kit = *aultToolkit(); dimen = *eenSize(); add(control); setLayout(new BorderLayout()); setLocation(* / 3, * / 3);// **3,**3 setSize(FWIDTH, FHEIGHT); (*_ON_CLOSE); setResizable(false); setVisible(true); } public static final int FWIDTH = 315; public static final int FHEIGHT = 380;}import *.*;import *.*;import *.*;import *.*;import *;import *;@SuppressWarnings("serial")public class ControlSnake extends JPanel implements ActionListener { Random rand; ArrayList list, listBody; String str, str1; static boolean key; int x, y, dx, dy, fx, fy, flag; int snakeBody; int speed; public ControlSnake() { snakeBody = 1; str = "上下左右方向鍵控制 P鍵暫停。"; str1 = "現在的長度為:" + snakeBody; key = true; flag = 1; speed = 700; rand = new Random(); list = new ArrayList(); listBody = new ArrayList(); x = 5; y = 5; *(new Point(x, y)); *(*(0)); dx = 10; dy = 0; fx = *t(30) * 10 + 5;// 2 fy = *t(30) * 10 + 5;// 2 setBackground(*); setSize(new Dimension(318, 380)); final Timer time = new Timer(speed, this); *(); addKeyListener(new KeyAdapter() { public void keyPressed(KeyEvent e) { if (*Code() == 37) { dx = -10; dy = 0; } else if (*Code() == 38) { dx = 0; dy = -10; } else if (*Code() == 39) { dx = 10; dy = 0; } else if (*Code() == 40) { dx = 0; dy = 10; } else if (*Code() == 80) { if (flag % 2 == 1) { *(); } if (flag % 2 == 0) { *(); } flag++; } } }); } public void paint(Graphics g) { *or(*); *ct(0, 0, 400, 400); *or(*_GRAY); *ne(3, 3, 305, 3); *ne(3, 3, 3, 305); *ne(305, 3, 305, 305); *ne(3, 305, 305, 305); *or(*); for (int i = 0; i < *(); i++) { *ct(*(i).x, *(i).y, 9, 9); } *ct(x, y, 9, 9); *or(*); *ct(fx, fy, 9, 9); *or(*_GRAY); str1 = "現在的長度為:" + snakeBody; *ring(str, 10, 320); *ring(str1, 10, 335); } public void actionPerformed(ActionEvent e) { x += dx; y += dy; if (makeOut() == false) { *ssageDialog(null, "重新開始。

          "); speed = 700; snakeBody = 1; x = 5; y = 5; *(); *(new Point(x, y)); *(); *(*(0)); dx = 10; dy = 0; } addPoint(x, y); if (x == fx && y == fy) { speed = (int) (speed * 0.8);//速度增加參數 if (speed < 200) { speed = 100; } fx = *t(30) * 10 + 5;// 2 fy = *t(30) * 10 + 5;// 2 snakeBody++;// 2 } // 2 repaint(); } public void addPoint(int xx, int yy) { // 動態的記錄最新發生的50步以內的移動過的坐標 // 并畫出最新的snakeBody if (*() < 100) {//蛇身長度最長為100 *(new Point(xx, yy)); } else { *(0); *(new Point(xx, yy)); } if (snakeBody == 1) { *(0); *(0, *(*() - 1)); } else { *(); if (*() < snakeBody) { for (int i = *() - 1; i > 0; i--) { *(*(i)); } } else { for (int i = *() - 1; *() < snakeBody; i--) { *(*(i)); } } } } public boolean makeOut() { if ((x < 3 || y < 3) || (x > 305 || y > 305)) { return false; } for (int i = 0; i < *() - 1; i++) { for (int j = i + 1; j < *(); j++) { if (*(i).equals(*(j))) { return false; } } } return true; }}。

          8.求助 C++作業 貪吃蛇代碼編寫

          #define N 200#include #include #include #define LEFT 0x4b00#define RIGHT 0x4d00#define DOWN 0x5000#define UP 0x4800#define ESC 0x011bint i,key;int score=0;/*得分*/int gamespeed=50000;/*游戲速度自己調整*/struct Food{ int x;/*食物的橫坐標*/ int y;/*食物的縱坐標*/ int yes;/*判斷是否要出現食物的變量*/}food;/*食物的結構體*/struct Snake{ int x[N]; int y[N]; int node;/*蛇的節數*/ int direction;/*蛇移動方向*/ int life;/* 蛇的生命,0活著,1死亡*/}snake;void Init(void);/*圖形驅動*/void Close(void);/*圖形結束*/void DrawK(void);/*開始畫面*/void GameOver(void);/*結束游戲*/void GamePlay(void);/*玩游戲具體過程*/void PrScore(void);/*輸出成績*//*主函數*/void main(void){ Init();/*圖形驅動*/ DrawK();/*開始畫面*/ GamePlay();/*玩游戲具體過程*/ Close();/*圖形結束*/}/*圖形驅動*/void Init(void){ int gd=DETECT,gm; initgraph(&gd,&gm,"c:\\tc"); cleardevice();}/*開始畫面,左上角坐標為(50,40),右下角坐標為(610,460)的圍墻*/void DrawK(void){/*setbkcolor(LIGHTGREEN);*/ setcolor(11); setlinestyle(SOLID_LINE,0,THICK_WIDTH);/*設置線型*/ for(i=50;i<=600;i+=10)/*畫圍墻*/ { rectangle(i,40,i+10,49); /*上邊*/ rectangle(i,451,i+10,460);/*下邊*/ } for(i=40;i<=450;i+=10) { rectangle(50,i,59,i+10); /*左邊*/ rectangle(601,i,610,i+10);/*右邊*/ }}/*玩游戲具體過程*/void GamePlay(void){ randomize();/*隨機數發生器*/ *=1;/*1表示需要出現新食物,0表示已經存在食物*/ *=0;/*活著*/ *ion=1;/*方向往右*/ snake.x[0]=100;snake.y[0]=100;/*蛇頭*/ snake.x[1]=110;snake.y[1]=100; *=2;/*節數*/ PrScore();/*輸出得分*/ while(1)/*可以重復玩游戲,壓ESC鍵結束*/ { while(!kbhit())/*在沒有按鍵的情況下,蛇自己移動身體*/ { if(*==1)/*需要出現新食物*/ { food.x=rand()%400+60; food.y=rand()%350+60; while(food.x%10!=0)/*食物隨機出現后必須讓食物能夠在整格內,這樣才可以讓蛇吃到*/ food.x++; while(food.y%10!=0) food.y++; *=0;/*畫面上有食物了*/ } if(*==0)/*畫面上有食物了就要顯示*/ { setcolor(GREEN); rectangle(food.x,food.y,food.x+10,food.y-10); } for(i=*-1;i>0;i--)/*蛇的每個環節往前移動,也就是貪吃蛇的關鍵算法*/ { snake.x[i]=snake.x[i-1]; snake.y[i]=snake.y[i-1]; } /*1,2,3,4表示右,左,上,下四個方向,通過這個判斷來移動蛇頭*/ switch(*ion) { case 1:snake.x[0]+=10;break; case 2: snake.x[0]-=10;break; case 3: snake.y[0]-=10;break; case 4: snake.y[0]+=10;break; } for(i=3;i<*;i++)/*從蛇的第四節開始判斷是否撞到自己了,因為蛇頭為兩節,第三節不可能拐過來*/ { if(snake.x[i]==snake.x[0]&&snake.y[i]==snake.y[0]) { GameOver();/*顯示失敗*/ *=1; break; } } if(snake.x[0]<55||snake.x[0]>595||snake.y[0]<55|| snake.y[0]>455)/*蛇是否撞到墻壁*/ { GameOver();/*本次游戲結束*/ *=1; /*蛇死*/ } if(*==1)/*以上兩種判斷以后,如果蛇死就跳出內循環,重新開始*/ break; if(snake.x[0]==food.x&&snake.y[0]==food.y)/*吃到食物以后*/ { setcolor(0);/*把畫面上的食物東西去掉*/ rectangle(food.x,food.y,food.x+10,food.y-10); snake.x[*]=-20;snake.y[*]=-20; /*新的一節先放在看不見的位置,下次循環就取前一節的位置*/ *++;/*蛇的身體長一節*/ *=1;/*畫面上需要出現新的食物*/ score+=10; PrScore();/*輸出新得分*/ } setcolor(4);/*畫出蛇*/ for(i=0;i<*;i++) rectangle(snake.x[i],snake.y[i],snake.x[i]+10, snake.y[i]-10); delay(gamespeed); setcolor(0);/*用黑色去除蛇的的最后一節*/ rectangle(snake.x[*-1],snake.y[*-1], snake.x[*-1]+10,snake.y[*-1]-10); } /*endwhile(!kbhit)*/ if(*==1)/*如果蛇死就跳出循環*/ break; key=bioskey(0);/*接收按鍵*/ if(key==ESC)/*按ESC鍵退出*/ break; else if(key==UP&&*ion!=4)/*判斷是否往相反的方向移動*/ *ion=3; else if(key==RIGHT&&*ion!=2) *ion=1; else if(key==LEFT&&*ion!=1) *ion=2; else if(key==DOWN&&*ion!=3) *ion=4; }/*endwhile(1)*/}/*游戲結束*/void GameOver(void){ cleardevice(); PrScore(); setcolor(RED); settextstyle(0,0,4); outtextxy(200,200,"GAME OVER"); getch();}/*輸出成績*/void PrScore(void){ char str[10]; setfillstyle(SOLID_FILL,YELLOW); bar(50,15,220,35); setcolor(6); settextstyle(0,0,2); sprintf(str,"score:%d",score); outtextxy(55,20,str);}/*圖形結束*/void Close(void){ getch(); closegraph();}。

          貪吃蛇代碼簡短代碼

          轉載請注明出處華閱文章網 » 貪吃蛇代碼簡短代碼

          短句

          微信個簽名大全簡短

          閱讀(335)

          本文主要為您介紹微信個簽名大全簡短,內容包括微信簽名簡短4至8字,微信簽名簡短4至8字,微信個性簽名簡短八字。不忘初心方得始終。2、得之我幸失之我命。3、鍛煉肌肉 防止挨揍。4、己所不欲,勿施于人。5、寂寞無奈 無心表白。6、南京晴天 曬

          短句

          結婚的簡短經典句子

          閱讀(337)

          本文主要為您介紹結婚的簡短經典句子,內容包括結婚十年經典句子,關于結婚的經典短句,不是祝福語,結婚時的經典臺詞是什么。結婚十年依然愛你如初,攜手白頭,不忘初心,愛情就是一生只愛你一人。2、十年伉儷兩相依,兩人幸福一輩子!

          短句

          愛國人物故事簡短20字

          閱讀(356)

          本文主要為您介紹愛國人物故事簡短20字,內容包括愛國歷史人物故事大全簡短,愛國故事20字,愛國人士的故事(2030字)。屈原的故事------端午節的傳說 戰國時代,楚秦爭奪霸權,詩人屈原很受楚王器重,然而屈原的主張遭到上官大夫靳尚為首的守舊派的反

          短句

          新年資料英文簡短

          閱讀(328)

          本文主要為您介紹新年資料英文簡短,內容包括求一篇簡短的英文版中國新年介紹,春節的來歷英文版(簡短的),春節的資料[英文版]。Spring Festival is the most important festival in China春節是中國最重要的節日It

          短句

          十四歲青春簡短寄語

          閱讀(426)

          本文主要為您介紹十四歲青春簡短寄語,內容包括14歲青春寄語寫給自己的,14歲青春寄語寫給自己的,中學生14歲生日青春寄語怎么寫。想想我當初14……我寫的都是郭敬明的東西……也許 老一點的東西試試吧 席慕蓉的 假如我來世上一遭只為與你相

          短句

          南京簡短童謠

          閱讀(847)

          本文主要為您介紹南京簡短童謠,內容包括江蘇南京民歌童謠短短的,江蘇南京民歌童謠短短的,南京童謠。1.小鴨子 小鴨子 嘎嘎嘎 黃黃嘴巴扁腳丫 小鴨嘎嘎找媽媽 我把小鴨帶回家 2.花兒笑 天上星星一顆顆 地上花兒一朵朵 星星眨眼花兒笑

          短句

          愛情的話簡短霸氣

          閱讀(330)

          本文主要為您介紹愛情的話簡短霸氣,內容包括我想要一句簡單又霸氣的情話,霸氣愛情句子大全,霸氣愛情句子:朕的江山養你一個禍水夠不夠。情話大全簡短一句話 時間:05-28 欄目:經典語句1 . 這輩子我們這么相愛,上輩子我們一定說好的!2 . 如果有喜

          短句

          4s店美容師傅簡短自我介紹

          閱讀(332)

          本文主要為您介紹4s店美容師傅簡短自我介紹,內容包括汽車4S店新員工的自我介紹(讓領導刮目相看的),面試汽修4s店的自我介紹如何做,去4S店面試,自我介紹怎么寫。各位領導,各位同事:大家好~!(鞠躬)我叫XXX,來自湖南XX,我性格開朗、為人正直、容易與人

          短句

          新年手抄報簡短的內容

          閱讀(321)

          本文主要為您介紹新年手抄報簡短的內容,內容包括簡短春節手抄報資料,春節手抄報內容簡短,關于新年手抄報的內容(簡單)(100字左右)。春節手抄報內容50字 春節的習俗:春節是我國一個古老的節日,也是全年最重要的一個節日,如何過慶賀這個節日,在千百年

          短句

          婚禮家長致辭簡短請大家吃好

          閱讀(362)

          本文主要為您介紹婚禮家長致辭簡短請大家吃好,內容包括婚禮父母致辭簡單,簡短的,婚禮父母致辭簡短30字,跪求結婚典禮上父母的致辭,關于最后招待賓客,吃好喝好的比較文雅。◆新郎父母祝酒辭 兩位親家、尊敬的各位來賓: 大家好! 今天我的兒子與

          短句

          對保爾的評價簡短

          閱讀(1060)

          本文主要為您介紹對保爾的評價簡短,內容包括對保爾·柯察金的評價,對保爾柯察金的評語,一句話概括噢,對保爾那句話的評析。保爾·柯察金,出生于貧困的烏克蘭鐵路工人家庭,早年喪父,全憑母親替人洗衣做飯維持生計。12歲時,母親把他送到車站食堂

          短句

          簡短的燒烤知識

          閱讀(318)

          本文主要為您介紹簡短的燒烤知識,內容包括我想開燒烤攤誰能教我簡單的燒烤知識領我入門,我想開燒烤攤誰能教我簡單的燒烤知識領我入門,燒烤知識。燒烤前的準備 1.材料的選擇 豬肉:應選肋、腰、臀上鮮嫩且稍帶些肥肉的五花肉,這樣烤出的肉不會

          短句

          三人閨蜜簽名簡短清新

          閱讀(313)

          本文主要為您介紹三人閨蜜簽名簡短清新,內容包括閨蜜三人網名清新脫俗,簡短,閨蜜三人網名簡短特別,閨蜜三人網名清新脫俗,簡短。一人一句一光年?涼心涼意涼薄生?花謝花飛花滿天?心如薄荷天然涼╮心如檸檬天然酸╮心如西瓜天然甜╮幸福沉

          短句

          個人說明簡短又動人

          閱讀(634)

          本文主要為您介紹個人說明簡短又動人,內容包括比較新穎,簡短的自我介紹,感人的個人說明,簡單而又新穎的自我介紹。本人性格活潑開朗、工作認真仔細、具有很好的親和力,善于與人溝通、而且愛好廣泛,愛好唱歌、寫作、喜歡不斷創新、追求新事物

          短句

          微信個簽名大全簡短

          閱讀(335)

          本文主要為您介紹微信個簽名大全簡短,內容包括微信簽名簡短4至8字,微信簽名簡短4至8字,微信個性簽名簡短八字。不忘初心方得始終。2、得之我幸失之我命。3、鍛煉肌肉 防止挨揍。4、己所不欲,勿施于人。5、寂寞無奈 無心表白。6、南京晴天 曬

          短句

          結婚的簡短經典句子

          閱讀(337)

          本文主要為您介紹結婚的簡短經典句子,內容包括結婚十年經典句子,關于結婚的經典短句,不是祝福語,結婚時的經典臺詞是什么。結婚十年依然愛你如初,攜手白頭,不忘初心,愛情就是一生只愛你一人。2、十年伉儷兩相依,兩人幸福一輩子!

          短句

          愛國人物故事簡短20字

          閱讀(356)

          本文主要為您介紹愛國人物故事簡短20字,內容包括愛國歷史人物故事大全簡短,愛國故事20字,愛國人士的故事(2030字)。屈原的故事------端午節的傳說 戰國時代,楚秦爭奪霸權,詩人屈原很受楚王器重,然而屈原的主張遭到上官大夫靳尚為首的守舊派的反

          短句

          新年資料英文簡短

          閱讀(328)

          本文主要為您介紹新年資料英文簡短,內容包括求一篇簡短的英文版中國新年介紹,春節的來歷英文版(簡短的),春節的資料[英文版]。Spring Festival is the most important festival in China春節是中國最重要的節日It

          短句

          十四歲青春簡短寄語

          閱讀(426)

          本文主要為您介紹十四歲青春簡短寄語,內容包括14歲青春寄語寫給自己的,14歲青春寄語寫給自己的,中學生14歲生日青春寄語怎么寫。想想我當初14……我寫的都是郭敬明的東西……也許 老一點的東西試試吧 席慕蓉的 假如我來世上一遭只為與你相

          短句

          南京簡短童謠

          閱讀(847)

          本文主要為您介紹南京簡短童謠,內容包括江蘇南京民歌童謠短短的,江蘇南京民歌童謠短短的,南京童謠。1.小鴨子 小鴨子 嘎嘎嘎 黃黃嘴巴扁腳丫 小鴨嘎嘎找媽媽 我把小鴨帶回家 2.花兒笑 天上星星一顆顆 地上花兒一朵朵 星星眨眼花兒笑

          短句

          愛情的話簡短霸氣

          閱讀(330)

          本文主要為您介紹愛情的話簡短霸氣,內容包括我想要一句簡單又霸氣的情話,霸氣愛情句子大全,霸氣愛情句子:朕的江山養你一個禍水夠不夠。情話大全簡短一句話 時間:05-28 欄目:經典語句1 . 這輩子我們這么相愛,上輩子我們一定說好的!2 . 如果有喜

          短句

          簡短狼性團隊隊歌

          閱讀(711)

          本文主要為您介紹簡短狼性團隊隊歌,內容包括狼性理念隊歌、隊名、口號、團隊手型,隊名隊呼隊歌大全,狼性隊名,加口號。精靈小組:可愛精靈,永遠開心! 2、隊名:飛躍,團隊口號:勇往直前,永不止步。 3、夢想組: 超越夢想,展現自我!經常被模仿,從未被超越

          <optgroup id="r9hwm"></optgroup><nav id="r9hwm"><label id="r9hwm"></label></nav>

            <tt id="r9hwm"><tr id="r9hwm"></tr></tt>
          1. 
            
          2. <optgroup id="r9hwm"><samp id="r9hwm"><dl id="r9hwm"></dl></samp></optgroup>

          3. <optgroup id="r9hwm"><samp id="r9hwm"><dl id="r9hwm"></dl></samp></optgroup>

                1. <listing id="r9hwm"></listing>
                  <delect id="r9hwm"></delect>
                  <optgroup id="r9hwm"><samp id="r9hwm"><ol id="r9hwm"></ol></samp></optgroup>
                  亚洲丰满少妇xxxxx高潮