| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 814 人关注过本帖
标题:大家好 能帮帮小妹吗
只看楼主 加入收藏
宝宝哭了
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2006-2-28
收藏
 问题点数:0 回复次数:14 
大家好 能帮帮小妹吗

   小妹刚学c语言,这些天编一个蛇吃蛋的游戏但是编好后蛇对键盘的反应不是很灵敏,而且吃了几个蛋后就死了.
 我不知道是什么原因,请好心人帮帮小妹,小妹不胜感激了.
 #include <math.h>
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <graphics.h>

void main(void)
{int gdriver , gmode ,A[20][2],B[20][20],q,j,k,front=0,rear_1=9,rear_2=8 ,x,y,a,b=0;
char i; gdriver=DETECT ;

for(j=0;j<=19;j++){for(k=0;k<=19;k++) B[j][k]=0;}
initgraph(&gdriver, &gmode, "");setcolor(YELLOW);
rectangle(0,0,200,200);
setwritemode(XOR_PUT);setcolor(RED);randomize();
j=rand()%20; k=rand()%19+1;
B[j][k]=2;rectangle(10*j,10*k,10*j+10,10*k+10);
for(q=1;q<=10;q++){
rectangle(q*10-10,0,q*10,10);A[q-1][0]=q*10-5;A[q-1][1]=5;B[q-1][0]=1;}
delay(100000);

while(1){
while(!kbhit()){
if(A[rear_1][0]==A[rear_2][0]){
if(A[rear_1][1]-10==A[rear_2][1]||A[rear_1][1]+20<A[rear_2][1])
y=A[rear_1][1]+10;
if(A[rear_1][1]+10==A[rear_2][1]||A[rear_1][1]-20>A[rear_2][1])
y=A[rear_1][1]-10;
x=A[rear_1][0];
if(y>200||y<0) y=abs(abs(y)-200);}
if(A[rear_1][1]==A[rear_2][1]){
if(A[rear_1][0]-10==A[rear_2][0]||A[rear_1][0]+20<A[rear_2][0])
x=A[rear_1][0]+10;
if(A[rear_1][0]+10==A[rear_2][0]||A[rear_1][0]-20>A[rear_2][0])
x=A[rear_1][0]-10;
y=A[rear_1][1];
if(x>200||x<0) x=abs(abs(x)-200);}
if(B[(x-5)/10][(y-5)/10]==0 )
{ B[(x-5)/10][(y-5)/10]=1;
B[(front-5)/10][(front-5)/10]=0 ;
rear_2=rear_1;rear_1=(rear_1+1)%20;
A[rear_1][0]=x;A[rear_1][1]=y;rectangle(x-5,y-5,x+5,y+5);
rectangle(A[front][0]-5,A[front][1]-5,A[front][0]+5,A[front][1]+5);
delay(100000);
front=(front+1)%20;}
if(B[(x-5)/10][(y-5)/10]==2 )
{ B[(x-5)/10][(y-5)/10]=1 ;
rear_2=rear_1;rear_1=(rear_1+1)%20;
A[rear_1][0]=x;A[rear_1][1]=y;delay(100000);
do{j=rand()%20;k=rand()%20;}while(B[j][k]!=0);
B[j][k]=2; rectangle(10*j,10*k,10*j+10,10*k+10);}
}

i=getch();b=0;
if((i=='w'||i=='s')&&(A[rear_1][1]==A[rear_2][1])){x=A[rear_1][0];
if(i=='w') y=A[rear_1][1]-10;
if(i=='s') y=A[rear_1][1]+10;
if(y>200||y<0)y=abs(abs(y)-200);}

if((i=='w'||i=='s')&&(A[rear_1][0]==A[rear_2][0])){
if((A[rear_1][1]-10==A[rear_2][1]||A[rear_1][1]+20<A[rear_2][1])&&i=='s')
{b=1 ;y=A[rear_1][1]+10; }
if((A[rear_1][1]-10==A[rear_2][1]||A[rear_1][1]+20<A[rear_2][1])&&i=='w')
{b=0;y=A[rear_1][1]+10;}
if((A[rear_1][1]+10==A[rear_2][1]||A[rear_1][1]-20>A[rear_2][1])&&i=='w')
{b=1; y=A[rear_1][1]-10;}
if((A[rear_1][1]+10==A[rear_2][1]||A[rear_1][1]-20>A[rear_2][1])&&i=='s')
{b=0;y=A[rear_1][1]-10;}
x=A[rear_1][0];
if(y>200||y<0) y=abs(abs(y)-200);}

if((i=='a'||i=='d')&&(A[rear_1][0]==A[rear_2][0])){y=A[rear_1][1];
if(i=='a')x=A[rear_1][0]-10;
if(i=='d') x=A[rear_1][0]+10;
if(x>200||x<0)x=abs(abs(x)-200);}

if((i=='a'||i=='d')&&(A[rear_1][1]==A[rear_2][1])){
if((A[rear_1][0]-10==A[rear_2][0]||A[rear_1][0]+20<A[rear_2][0])&&i=='d')
{ b=1;x=A[rear_1][0]+10;}
if((A[rear_1][0]-10==A[rear_2][0]||A[rear_1][0]+20<A[rear_2][0])&&i=='a')
{ b=0;x=A[rear_1][0]+10;}
if((A[rear_1][0]+10==A[rear_2][0]||A[rear_1][0]-20>A[rear_2][0])&&i=='a')
{b=1; x=A[rear_1][0]-10;}
if((A[rear_1][0]+10==A[rear_2][0]||A[rear_1][0]-20>A[rear_2][0])&&i=='d')
{ b=0 ; x=A[rear_1][0]-10;}
y=A[rear_1][1];
if(x>200||x<0) x=abs(abs(x)-200);}

if(B[(x-5)/10][(y-5)/10]==0 )
{ B[(x-5)/10][(y-5)/10]=1;
B[(front-5)/10][(front-5)/10]=0 ;
rear_2=rear_1;rear_1=(rear_1+1)%20;
A[rear_1][0]=x;A[rear_1][1]=y;rectangle(x-5,y-5,x+5,y+5);
rectangle(A[front][0]-5,A[front][1]-5,A[front][0]+5,A[front][1]+5);
delay(100000);
front=(front+1)%20;}
if(B[(x-5)/10][(y-5)/10]==2 )
{ B[(x-5)/10][(y-5)/10]=1 ;
rear_2=rear_1;rear_1=(rear_1+1)%20;
A[rear_1][0]=x;A[rear_1][1]=y;delay(100000);
do{j=rand()%20;k=rand()%20;}while(B[j][k]!=0);
B[j][k]=2;rectangle(10*j,10*k,10*j+10,10*k+10);}
if(b==1)delay(10000);else delay(100000);b=0;
}}

搜索更多相关主题的帖子: void 不胜感激 include 
2006-02-28 20:30
cxwl3sxl
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:495
专家分:129
注 册:2005-11-12
收藏
得分:0 

晕,我们都学习c一年了,我都还不知道咋编游戏!!!哎!!!


努力,哈哈,总有一天会变成高手~~~~~~因为我相信:没有办不到,只有想不到!http://t..cn/fpress
2006-02-28 22:49
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
怀疑XB,发了一帖

叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-02-28 22:52
【宋★庆】
Rank: 1
等 级:新手上路
帖 子:32
专家分:0
注 册:2006-2-25
收藏
得分:0 
2006-03-01 07:35
梦想中国
Rank: 2
等 级:新手上路
威 望:5
帖 子:539
专家分:0
注 册:2006-2-26
收藏
得分:0 
支持2楼

2006-03-01 12:40
abingchem
Rank: 6Rank: 6
等 级:贵宾
威 望:24
帖 子:716
专家分:0
注 册:2004-12-30
收藏
得分:0 
你这样写程序不好,要加注释大家才好看

别介意我这样说话啊:)

此人已消失
2006-03-01 13:14
xiaowoniu
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-3-1
收藏
得分:0 
我也学了一年了,也不知道怎么编游戏,你还说是刚刚学习,刺激我们啊。我赞同六楼的说法
2006-03-01 22:42
三¥叶¥虫
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2006-3-1
收藏
得分:0 
我也没有用C作过游戏

2006-03-01 22:52
cordier
Rank: 2
等 级:论坛游民
威 望:1
帖 子:449
专家分:14
注 册:2006-2-9
收藏
得分:0 
我觉得自己无能

2006-03-02 06:54
bluemoonte
Rank: 1
等 级:新手上路
帖 子:156
专家分:0
注 册:2006-2-12
收藏
得分:0 

我想自杀

2006-03-02 11:02
快速回复:大家好 能帮帮小妹吗
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.035073 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved