求教C语言问题

#include<graphics.h>#include<bios.h>#defineVK_LEFT0x4b00#defineVK_RIGHT0x4d00#defineV... #include <graphics.h>
#include <bios.h>

#define VK_LEFT 0x4b00
#define VK_RIGHT 0x4d00
#define VK_DOWN 0x5000
#define VK_UP 0x4800
#define VK_HOME 0x4700
#define VK_END 0x4100
#define VK_SPACE 0x3920
#define VK_ESC 0x011b
#define VK_ENTER 0x1C0d

#define SCREENWIDTH 640
#define SCREENHEIGHT 480
#define SIZE 16
#define BGCOLOR BLACK
#define FORECLOR YELLOW

#define SCOREINTERVAL 30

void DrawBlock(int x,int y,int color)
{
setfillstyle(SOLID_FILL,color);
bar(SIZE*x,SIZE*y,SIZE*(x+1),SIZE*(y+1));
}

enum direct{Left,Up,Right,Down};
enum bool{False,True};

enum bool Moveable(int x,int y,enum direct dir)
{
switch(dir)
{
case Left:
if(x>0) return True;
break;
case Up:
if(y>0) return True;
break;
case Right:
if(x<SCREENWIDTH/SIZE-1)return True;
break;
case Down:
if(y<SCREENHEIGHT/SIZE-1)
return Ture;
}
return false;
void MoveBlock(int*x,int*y,enum direct dir)
{
Drawblock(*x,*y,BGCDLOR);
swith(dir)
{
case Left;
(*x)--;
break;
case Up;(*x)--;
break;
case Right;
(*x)++;
break;
case Down;
(*y)++;
break;
}
DrawBlock(*x,*y,FORECOLOR);
}
void main()
{
int x=0,y=0;
int key;
enun bool fGaneDver=False;
int graoph(&graphdriver,&graphmode,"H:\TCPP30E");
DrawBlock(x,y,FORECDLOR);
for(;;)
{
if(bioskey(1) key=bioskkkey(0));
else key=0;
swith(key)
{
case VK_LEFT:
if(Moveblock(x,y,Left))
MoverBlock(&x,&y,Left);
break;
case VK_RIGHT:
if(Moveblock(x,y,Right))
MoverBlock(&x,&y,Right);
break;
case VK_UP:
if(Moveblock(x,y,up))
MoverBlock(&x,&y,Up);
break;
case VK_DOWN:
if(Moveblock(x,y,Down))
MoverBlock(&x,&y,Down);
break;
case VK_ESC:
fGameover=Ture;
break;
}
if(fGameover)
break;
}
closegraph();
}

我不知道错误在那里,帮我看下,谢了 。
展开
 我来答
玉枫孤雨
推荐于2016-07-02 · TA获得超过233个赞
知道答主
回答量:123
采纳率:0%
帮助的人:0
展开全部
这程序我都不好意思改,至少有五十个错误,从哪找来的啊???

#include <graphics.h>
#include <bios.h>

#define VK_LEFT 0x4b00
#define VK_RIGHT 0x4d00
#define VK_DOWN 0x5000
#define VK_UP 0x4800
#define VK_HOME 0x4700
#define VK_END 0x4100
#define VK_SPACE 0x3920
#define VK_ESC 0x011b
#define VK_ENTER 0x1C0d
#define SCREENWIDTH 640
#define SCREENHEIGHT 480
#define SIZE 16
#define BGCOLOR BLACK
#define FORECOLOR YELLOW
#define SCOREINTERVAL 30

int DrawBlock(int x,int y,int color)
{
setfillstyle(SOLID_FILL,color);
bar(SIZE*x,SIZE*y,SIZE*(x+1),SIZE*(y+1));
}
enum direct{Left,Up,Right,Down};
enum bool{False,True};
enum bool Moveable(int x,int y,enum direct dir)
{
switch(dir)
{
case Left:
if(x>0) return True;
break;
case Up:
if(y>0) return True;
break;
case Right:
if(x<SCREENWIDTH/SIZE-1) return True;
break;
case Down:
if(y<SCREENHEIGHT/SIZE-1) return True;
}
return False;
}

int MoveBlock(int*x,int*y,enum direct dir)
{
DrawBlock(*x,*y,BGCOLOR);
switch(dir)
{
case Left:
(*x)--;
break;
case Up:
(*x)--;
break;
case Right:
(*x)++;
break;
case Down:
(*y)++;
break;
}
DrawBlock(*x,*y,FORECOLOR);
}

void main()
{
int x=0,y=0;
int key;int fGameover;
enum bool fGaneDver=False;
int graphdriver=DETECT,graphmode;
initgraph(&graphdriver,&graphmode,"H:\TCPP30E");
DrawBlock(x,y,FORECOLOR);
for(;;)
{
if(bioskey(1))
key=bioskey(0);
else
key=0;
switch(key)
{
case VK_LEFT:
MoveBlock(&x,&y,Left);
break;
case VK_RIGHT:
MoveBlock(&x,&y,Right);
break;
case VK_UP:
MoveBlock(&x,&y,Up);
break;
case VK_DOWN:
MoveBlock(&x,&y,Down);
break;
case VK_ESC:
fGameover=True;
break;
}
if(fGameover)
break;
}
closegraph();
}

我已经改到在TC中只有一个错误的情况,好像说什么图形什么的没有初始化。这个我不会,因为没学过,呵呵。就这样啦
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
thgfwhb
2007-12-20 · TA获得超过181个赞
知道小有建树答主
回答量:469
采纳率:0%
帮助的人:0
展开全部
能告诉我报什么错误吗?vc++不能测试你的这个程序。graphics.h不是vc++的标准库。你把报的错误说下。帮你分析下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式