• 手机版

    扫码体验手机版

  • 微信公众号

    扫码关注公众号

国内首家协议开发

软芯音视解码保护平台

在线
客服

发布
需求

在线
聊天

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

这个贪吃蛇小游戏一次生成了四个食物,而我只想一次生成一个食物,怎么修改

#include#include#include#include#include#define MAXLEN 30#define MAXFOD 6#define eror 1#define ok 0#pragma comment ( lib, "Winmm.lib" )enum direction{        left,up,right,down};int pos[MAXLEN][2];int food[MAXFOD][2];int LENFOD=0;int LENGTH=0;int MARK=0;int HIGHESTM=0;direction DIT;int snake();int drawLine();int init();int controlfood();int saveMark();boolean isdead();boolean iswin();int countmark();void main(){        int i=0,count=1;        srand((unsigned)time(0));        initgraph(600,900);//设置窗口的总大小        setcolor(YELLOW);//设置字体颜色        setfont( 30, 0,"隶书");//设置字体大小和类型        mciSendString( "open ./source/skycity.mp3 alias skycity", 0, 0, 0 );        mciSendString( "play skycity repeat ", 0, 0, 0 );        start:        cleardevice();        init();        /*or(i=0;i0;i--)                {                pos[0]=pos[i-1][0];                pos[1]=pos[i-1][1];                }                closegraph();                for(i=0;i0;i--)                                                {                                                        pos[0]=pos[i-1][0];                                                        pos[1]=pos[i-1][1];                                                }                                                pos[0][1] -= 1;                                        }                                        break;                                case 80:                                case 's':                                case 'S':                                        if(DIT!=up)                                        {                                                DIT=down;                                                for(i=LENGTH-1;i>0;i--)                                                {                                                        pos[0]=pos[i-1][0];                                                        pos[1]=pos[i-1][1];                                                }                                                pos[0][1] += 1;                                        }                                        break;                                case 75:                                case 'a':                                case 'A':                                        if(DIT!=right)                                        {                                                DIT=left;                                                for(i=LENGTH-1;i>0;i--)                                                {                                                        pos[0]=pos[i-1][0];                                                        pos[1]=pos[i-1][1];                                                }                                                        pos[0][0] -= 1;                                        }                                        break;                                case 77:                                case 'd':                                case 'D':                                        if(DIT!=left)                                        {                                                DIT=right;                                                for(i=LENGTH-1;i>0;i--)                                                {                                                        pos[0]=pos[i-1][0];                                                        pos[1]=pos[i-1][1];                                                }                                                pos[0][0] += 1;                                        }                                        break;                                }                                cleardevice();                                controlfood();                                drawLine();                                countmark();                                snake();                                count=1;                                FlushBatchDraw();                }        if(LENGTH0;i--)                {                        pos[0]=pos[i-1][0];                        pos[1]=pos[i-1][1];                }                switch(DIT)                {                        case up:                                pos[0][1] -= 1;                                break;                        case down:                                pos[0][1] += 1;                                break;                        case left:                                pos[0][0] -= 1;                                break;                        case right:                                pos[0][0] += 1;                                break;                }                cleardevice();                controlfood();                drawLine();                countmark();                snake();                FlushBatchDraw();        }        if(isdead())        {                mciSendString( "play Lose ", 0, 0, 0 );                outtextxy(240,275,"LOSSING!");                FlushBatchDraw();                while(true)                {                        if(kbhit())                        {                                switch(getch())                                {                                case 13:                                        mciSendString( "close Lose ", 0, 0, 0 );                                        mciSendString( "close win ", 0, 0, 0 );                                        goto start;                                case 27:                                        mciSendString( "close skycity ", 0, 0, 0 );                                        closegraph();                                        exit(ok);                                }                        }                }        }        if(iswin())        {                mciSendString( "play win ", 0, 0, 0 );                outtextxy(240,275,"WINNING!");                FlushBatchDraw();                while(true)                {                        if(kbhit())                        {                                switch(getch())                                {                                case 13:                                        mciSendString( "close Lose ", 0, 0, 0 );                                        mciSendString( "close win ", 0, 0, 0 );                                        goto start;                                case 27:                                        mciSendString( "close skycity ", 0, 0, 0 );                                        closegraph();                                        exit(ok);                                }                        }                }        }        count++;        Sleep(20);}}int snake(){        int i=0,j=0;        setfillcolor(YELLOW);        for(i=0;i

免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。

版权声明:作者保留权利,不代表天盟立场。

使用道具 举报

全部参与1

在controlfood中加代码,判定食物被吃了后加再随机生成一个食物,与init中代码相同。

使用道具 举报

发新帖

发布任务需求已有1031167位用户正在使用天盟网服务

发布分类: *
任务预算: *
需求内容: *
手机号码: *
任务商家报价为
  • 预算价 :
  • 成交价 :
  • 完工期 :
  • 质保期 :

* 最终任务项目以服务商报价、双方协商为准!