2048小游戏怎么使用C语言实现

这篇文章将为大家详细讲解有关2048小游戏怎么使用C语言实现,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

本文实例为大家分享了C语言实现2048游戏的具体代码,供大家参考,具体内容如下

环境运行 vc6.0 ,cpp文件。

基本上是c写的,但是改变字体颜色,在控制台移动光标等等好像不是c中的。

2048小游戏怎么使用C语言实现2048小游戏怎么使用C语言实现

2048小游戏怎么使用C语言实现

代码:

#include<time.h>
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
#include<windows.h>
#definex026
#definey01
HANDLEhOutput=GetStdHandle(STD_OUTPUT_HANDLE);
/*显示声明*/
voidp(int*a,inti,intx,inty);
/*部分刷新声明*/
voidshua(void);
/*胜利画面测试函数声明*/
inttest(void);
/*字体空格声明*/
voidkg(int*a);
/*画长条函数的声明*/
voidct(intx,inty,intl,intk,intc);
/*标题字幕2048*/
voidp2048(intx,inty);
/*单个颜色返回值声明*/
intcol(int*a);
/*移动光标*/
voidgotoxy(intx,inty)
{
COORDcoordScreen={0,0};
coordScreen.X=x;
coordScreen.Y=y;
SetConsoleCursorPosition(hOutput,coordScreen);
}
/*字体颜色*/
voidtextcolor(intcolor)
{
SetConsoleTextAttribute(hOutput,color);
}
/*显示函数*/
voidprin(int*a,int*score,int*scoremax)
{
inti;
for(i=0;i<16;i++)
{
p(a,i,x0,y0);
}
printf("\n\nscore=%dMAXscore=%d\n",*score,*scoremax);
}
/*产生随机数*/
intshu(void)
{
ints=0;
s=1+(int)(12.0*rand()/(RAND_MAX+1.0));
if(s==12)
return4;
else
return2;
}

/*决定位置*/
intrands(void)
{
return(int)(16.0*rand()/(RAND_MAX+1.0));
}
/*主函数*/
intmain(void)
{
intflag=0,c=0,pd=1,n=0,i=0,m=0,j=
0,sj,sj1,sj2,a[16]={0},b[16]={0},x=0,score=0,t=0,jx=0,scoremax=0,ks=1,yx=0;
charsr,an;
//开始画面
p2048(17,1);
textcolor(255);
gotoxy(35,15);
for(;;)
{
an=getch();
switch(an)
{
case72:
if(ks==1)
ks=0;
else
ks=1;
break;
case80:
if(ks==1)
ks=0;
else
ks=1;
break;
case'\r':
yx=1;
break;
default:
break;
}
if(ks==1)
gotoxy(35,15);
else
gotoxy(34,18);
if(ks==1&&yx==1)
break;
elseif(ks==0&&yx==1)
{
textcolor(240);
gotoxy(0,0);
for(i=0;i<=500;i++)
{
printf("");
}
gotoxy(0,0);
ct(12,5,58,10,223);
gotoxy(13,6);
printf("2048游戏说明");
gotoxy(13,8);
printf("通过按数字键移动数字,合并相同的数字来的取得更大的数。");
gotoxy(13,9);
printf("得到2048时游戏即胜利,当然您也可以选择继续挑战。");
gotoxy(13,11);
printf("按键操作:");
gotoxy(13,13);
printf("上:↑下:↓左:←右:→重新开始:r退出游戏:e");
textcolor(240);
printf("\n\n\n\n\nIknow");
getch();
p2048(17,1);
textcolor(255);
gotoxy(34,18);
}
yx=0;
}
//隐藏光标
HANDLEhOut=GetStdHandle(STD_OUTPUT_HANDLE);
CONSOLE_CURSOR_INFOcci;
GetConsoleCursorInfo(hOut,&cci);
cci.bVisible=FALSE;
SetConsoleCursorInfo(hOut,&cci);
//刷新画面
textcolor(240);
gotoxy(0,0);
for(i=0;i<=500;i++)
{
printf("");
}
gotoxy(0,0);
/*设置时间种子*/
srand((int)time(0));
/*设置初始值*/
sj=rands();
sj1=rands();
sj2=rands();
for(;;)
{
if(sj==sj1||sj==sj2||sj1==sj2)
{
sj1=rands();
sj2=rands();
}
else
break;
}
a[sj]=shu();
a[sj1]=shu();
a[sj2]=shu();
/*显示*/
prin(a,&score,&scoremax);
for(;;)
{
/*无回显输入*/
sr=getch();
/*scanf("%d",&n);*//*记录之前的位置,将用以比较移动是否有效*/
for(j=0;j<16;j++)
b[j]=a[j];
switch(sr)
{
/*向上移动*/
case72:
/*全部移到上边*/
for(j=0;j<4;j++)
{
for(c=0;c<3;c++)
{
if(a[j]==0)
{
a[j]=a[j+4];
a[j+4]=0;
}
if(a[j+4]==0)
{
a[j+4]=a[j+8];
a[j+8]=0;
}
if(a[j+8]==0)
{
a[j+8]=a[j+12];
a[j+12]=0;
}
}
/*移到上面后的合并操作*/
if(a[j]==a[j+4])
{
a[j]=a[j]*2;
score=score+a[j];
a[j+4]=a[j+8];
a[j+8]=a[j+12];
a[j+12]=0;
if(a[j+4]==a[j+8])
{
a[j+4]=2*a[j+4];
score=score+a[j+4];
a[j+8]=0;
}
}
elseif(a[j+4]==a[j+8])
{
a[j+4]=2*a[j+4];
score=score+a[j+4];
a[j+8]=a[j+12];
a[j+12]=0;
}
elseif(a[j+8]==a[j+12])
{
a[j+8]=2*a[j+8];
score=score+a[j+8];
a[j+12]=0;
}
else;
}
break;
/*向下移动*/
case80:
/*全部移动到下面*/
for(j=12;j<16;j++)
{
for(c=0;c<3;c++)
{
if(a[j]==0)
{
a[j]=a[j-4];
a[j-4]=0;
}
if(a[j-4]==0)
{
a[j-4]=a[j-8];
a[j-8]=0;
}
if(a[j-8]==0)
{
a[j-8]=a[j-12];
a[j-12]=0;
}
}
/*移到下面后的合并操作*/
if(a[j]==a[j-4])
{
a[j]=a[j]*2;
score=score+a[j];
a[j-4]=a[j-8];
a[j-8]=a[j-12];
a[j-12]=0;
if(a[j-4]==a[j-8])
{
a[j-4]=2*a[j-4];
score=score+a[j-4];
a[j-8]=0;
}
}
elseif(a[j-4]==a[j-8])
{
a[j-4]=2*a[j-4];
score=score+a[j-4];
a[j-8]=a[j-12];
a[j-12]=0;
}
elseif(a[j-8]==a[j-12])
{
a[j-8]=2*a[j-8];
score=score+a[j-8];
a[j-12]=0;
}
else;
}
break;
/*向左移动*/
case75:
/*全部移动到左面*/
for(j=0;j<=12;j=j+4)
{
for(c=0;c<3;c++)
{
if(a[j]==0)
{
a[j]=a[j+1];
a[j+1]=0;
}
if(a[j+1]==0)
{
a[j+1]=a[j+2];
a[j+2]=0;
}
if(a[j+2]==0)
{
a[j+2]=a[j+3];
a[j+3]=0;
}
}
/*移到左面后的合并操作*/
if(a[j]==a[j+1])
{
a[j]=a[j]*2;
score=score+a[j];
a[j+1]=a[j+2];
a[j+2]=a[j+3];
a[j+3]=0;
if(a[j+1]==a[j+2])
{
a[j+1]=2*a[j+1];
score=score+a[j+1];
a[j+2]=0;
}
}
elseif(a[j+1]==a[j+2])
{
a[j+1]=2*a[j+1];
score=score+a[j+1];
a[j+2]=a[j+3];
a[j+3]=0;
}
elseif(a[j+2]==a[j+3])
{
a[j+2]=2*a[j+2];
score=score+a[j+2];
a[j+3]=0;
}
else;
}
break;
/*向右移动*/
case77:
/*全部移动到右面*/
for(j=3;j<=16;j=j+4)
{
for(c=0;c<3;c++)
{
if(a[j]==0)
{
a[j]=a[j-1];
a[j-1]=0;
}
if(a[j-1]==0)
{
a[j-1]=a[j-2];
a[j-2]=0;
}
if(a[j-2]==0)
{
a[j-2]=a[j-3];
a[j-3]=0;
}
}
/*移到右面后的合并操作*/
if(a[j]==a[j-1])
{
a[j]=a[j]*2;
score=score+a[j];
a[j-1]=a[j-2];
a[j-2]=a[j-3];
a[j-3]=0;
if(a[j-1]==a[j-2])
{
a[j-1]=2*a[j-1];
score=score+a[j-1];
a[j-2]=0;
}
}
elseif(a[j-1]==a[j-2])
{
a[j-1]=2*a[j-1];
score=score+a[j-1];
a[j-2]=a[j-3];
a[j-3]=0;
}
elseif(a[j-2]==a[j-3])
{
a[j-2]=2*a[j-2];
score=score+a[j-2];
a[j-3]=0;
}
else;
}
break;
/*重新开始*/
case'r':
for(j=0;j<16;j++)
a[j]=0;
sj1=rands();
sj2=rands();
for(;;)
{
if(sj1==sj2)
{
sj1=rands();
sj2=rands();
}
else
break;
}
a[sj1]=shu();
a[sj2]=shu();
flag=0;
score=0;
jx=0;
break;
/*退出*/
case'e':
shua();
ct(32,19,15,3,207);
printf("游戏已退出!");
textcolor(255);
gotoxy(0,0);
getch();
return0;
break;
/*其他情况(刷新)*/
default:
;
break;
}
/*windows下的系统清屏函数*/
//system("cls");
/*判断最高分*/
if(score>scoremax)
scoremax=score;
/*判断是否胜利(是否含有2048)*/
for(j=0;j<16;j++)
{
if(a[j]==2048&&jx==0)
{
/*胜利时输出游戏结果*/
/*显示*/
prin(a,&score,&scoremax);
shua();
ct(20,19,15,3,207);
printf("游戏胜利!");
textcolor(159);
gotoxy(38,19);
printf("Continue");
textcolor(239);
gotoxy(49,20);
printf("Restart");
textcolor(175);
gotoxy(49,21);
printf("Exit");
t=2;
an=75;
yx=0;
for(;;)
{
an=getch();
switch(an)
{
case72:
if(t==2)
{
t=3;
textcolor(240);
gotoxy(36,21);
printf("");
textcolor(175);
gotoxy(38,21);
printf("Exit");
textcolor(240);
gotoxy(36,19);
printf("");
textcolor(159);
gotoxy(47,19);
printf("Continue");
textcolor(240);
gotoxy(36,20);
printf("");
textcolor(239);
gotoxy(49,20);
printf("Restart");
}
elseif(t==1)
{
t=2;
textcolor(240);
gotoxy(36,19);
printf("");
textcolor(159);
gotoxy(38,19);
printf("Continue");
textcolor(240);
gotoxy(36,20);
printf("");
textcolor(239);
gotoxy(47,20);
printf("Restart");
textcolor(240);
gotoxy(36,21);
printf("");
textcolor(175);
gotoxy(49,21);
printf("Exit");
}
else
{
t=1;
textcolor(240);
gotoxy(36,20);
printf("");
textcolor(239);
gotoxy(38,20);
printf("Restart");
textcolor(240);
gotoxy(36,21);
printf("");
textcolor(175);
gotoxy(47,21);
printf("Exit");
textcolor(240);
gotoxy(36,19);
printf("");
textcolor(159);
gotoxy(49,19);
printf("Continue");
}
break;
case80:
if(t==2)
{
t=1;
textcolor(240);
gotoxy(36,20);
printf("");
textcolor(239);
gotoxy(38,20);
printf("Restart");
textcolor(240);
gotoxy(36,19);
printf("");
textcolor(159);
gotoxy(47,19);
printf("Continue");
textcolor(240);
gotoxy(36,21);
printf("");
textcolor(175);
gotoxy(49,21);
printf("Exit");
}
elseif(t==1)
{
t=3;
textcolor(240);
gotoxy(36,21);
printf("");
textcolor(175);
gotoxy(38,21);
printf("Exit");
textcolor(240);
gotoxy(36,20);
printf("");
textcolor(239);
gotoxy(47,20);
printf("Restart");
textcolor(240);
gotoxy(36,19);
printf("");
textcolor(159);
gotoxy(49,19);
printf("Continue");
}
else
{
t=2;
textcolor(240);
gotoxy(36,19);
printf("");
textcolor(159);
gotoxy(38,19);
printf("Continue");
textcolor(240);
gotoxy(36,21);
printf("");
textcolor(175);
gotoxy(47,21);
printf("Exit");
textcolor(240);
gotoxy(36,20);
printf("");
textcolor(239);
gotoxy(49,20);
printf("Restart");
}
break;
case'\r':
yx=1;
break;
}
if(yx==1)
{
yx=0;
break;
}
}
shua();
textcolor(255);
gotoxy(0,0);
/*重新开始游戏*/
if(t==1)
{
shua();
pd=1;
x=0;
for(j=0;j<16;j++)
a[j]=0;
sj1=rands();
sj2=rands();
for(;;)
{
if(sj1==sj2)
{
sj1=rands();
sj2=rands();
}
else
break;
}
a[sj1]=shu();
a[sj2]=shu();
for(j=0;j<16;j++)
b[j]=a[j];
flag=0;
score=0;
break;
}
/*继续游戏*/
elseif(t==2)
{
jx=1;
shua();
}
else
{
shua();
ct(32,19,15,3,207);
printf("游戏已退出!");
textcolor(255);
gotoxy(0,0);
getch();
return0;
}
}
}
/*决定是否产生新的数及其位置以及游戏是否失败*/
/*flag,pd,x赋初值*/
flag=0;
pd=1;
x=0;
/*判断移动后是否有空位:pd=0为有空位,pd=1为无空位*/
for(j=0;j<16;j++)
{
if(a[j]==0)
pd=0;
}
/*移动是否有效:x=1有效,x=0无效*/
for(j=0;j<16;j++)
{
if(a[j]!=b[j])
{
x=1;
break;
}
}
/*移动有效时且有空位时产生新数*/
if(pd==0&&x==1)
{
for(;;)
{
sj=rands();
if(a[sj]==0)
{
a[sj]=shu();
break;
}
else;
}
}
/*游戏是否失败的判定*/
/*移动后无空位*/
elseif(pd!=0)
{
/*判断是否还有可合并的项*/
for(j=0;j<16;j++)
{
if(j!=3&&j!=7&&j!=11&&j!=15&&a[j]==a[j+1])
{
flag=flag+1;
}
if(j!=12&&j!=13&&j!=14&&j!=15
&&a[j]==a[j+4])
{
flag=flag+1;
}
if(j!=0&&j!=4&&j!=8&&j!=12&&a[j]==a[j-1])
{
flag=flag+1;
}
if(j!=0&&j!=1&&j!=2&&j!=3&&a[j]==a[j-4])
{
flag=flag+1;
}
}
/*无空位且没有可合并的项时游戏失败*/
if(flag==0)
{
/*失败时输出游戏结果*/
/*显示*/
prin(a,&score,&scoremax);
shua();
ct(20,19,15,3,271);
printf("游戏结束!");
textcolor(240);
gotoxy(38,19);
printf("Whethercontinuethegame?");
gotoxy(44,21);
printf("@YesNo");
gotoxy(44,21);
t=1;
an=75;
yx=0;
for(;;)
{
an=getch();
switch(an)
{
case75:
if(t==1)
{
t=0;
gotoxy(53,21);
printf("@");
gotoxy(44,21);
printf("");
}
else
{
t=1;
gotoxy(44,21);
printf("@");
gotoxy(53,21);
printf("");
}
break;
case77:
if(t==1)
{
t=0;
gotoxy(53,21);
printf("@");
gotoxy(44,21);
printf("");

}
else
{
t=1;
gotoxy(44,21);
printf("@");
gotoxy(53,21);
printf("");
}
break;
case'\r':
yx=1;
break;
}
if(yx==1)
{
yx=0;
break;
}
}
shua();
textcolor(255);
gotoxy(0,0);
if(t==1)
{
for(j=0;j<16;j++)
a[j]=0;
sj=rands();
sj1=rands();
sj2=rands();
for(;;)
{
if(sj1==sj2||sj1==sj||sj2==sj)
{
sj1=rands();
sj2=rands();
}
else
break;
}
a[sj]=shu();
a[sj1]=shu();
a[sj2]=shu();
score=0;
jx=0;
}
else
{
shua();
ct(32,19,15,3,207);
printf("游戏已退出!");
textcolor(255);
gotoxy(0,0);
getch();
return0;
}
}
}
else;
/*显示结果*/
prin(a,&score,&scoremax);
}
return0;
}
/*显示函数*/
voidp(int*a,inti,intx,inty)
{
intx1=x,y1=y;
textcolor(col(a+i));
x1=x+(i%4)*7;
y1=y+(i/4)*4;
gotoxy(x1,y1);
printf("");
gotoxy(x1,y1+1);
kg(a+i);
gotoxy(x1,y1+2);
printf("");
textcolor(240);
}
/*字体空格声明*/
voidkg(int*a)
{
if(*a==0)
printf("",*a);
elseif(*a<10)
printf("%d",*a);
elseif(*a<100)
printf("%d",*a);
elseif(*a<1000)
printf("%d",*a);
elseif(*a<10000)
printf("%d",*a);
else
printf("%d",*a);
}
/*单个颜色返回值*/
intcol(int*a)
{
intco=127;
if(*(a)==0)
co=127;
elseif(*(a)==2)
co=143;
elseif(*(a)==4)
co=191;
elseif(*(a)==8)
co=175;
elseif(*(a)==16)
co=239;
elseif(*(a)==32)
co=223;
elseif(*(a)==64)
co=207;
elseif(*(a)==128)
co=95;
elseif(*(a)==256)
co=159;
elseif(*(a)==512)
co=63;
elseif(*(a)==1024)
co=111;
elseif(*(a)==2048)
co=79;
elseif(*(a)==4096)
co=287;
else
co=271;
returnco;
}
/*标题字幕2048*/
voidp2048(intx,inty)
{
inti;
textcolor(240);
gotoxy(0,0);
for(i=0;i<=500;i++)
{
printf("");
}
//2
textcolor(207);
gotoxy(x,y);
printf("");
gotoxy(x,y+1);
printf("");
gotoxy(x+7,y+2);
printf("");
gotoxy(x+7,y+3);
printf("");
gotoxy(x,y+4);
printf("");
gotoxy(x,y+5);
printf("");
gotoxy(x,y+6);
printf("");
gotoxy(x,y+7);
printf("");
gotoxy(x,y+8);
printf("");
gotoxy(x,y+9);
printf("");
//0
textcolor(239);
gotoxy(x+13,y);
printf("");
gotoxy(x+13,y+1);
printf("");
gotoxy(x+13,y+2);
printf("");
gotoxy(x+13+7,y+2);
printf("");
gotoxy(x+13,y+3);
printf("");
gotoxy(x+13+7,y+3);
printf("");
gotoxy(x+13,y+4);
printf("");
gotoxy(x+13+7,y+4);
printf("");
gotoxy(x+13,y+5);
printf("");
gotoxy(x+13+7,y+5);
printf("");
gotoxy(x+13,y+6);
printf("");
gotoxy(x+13+7,y+6);
printf("");
gotoxy(x+13,y+7);
printf("");
gotoxy(x+13+7,y+7);
printf("");
gotoxy(x+13,y+8);
printf("");
gotoxy(x+13,y+9);
printf("");
//4
textcolor(159);
gotoxy(x+26,y);
printf("");
gotoxy(x+26+7,y);
printf("");
gotoxy(x+26,y+1);
printf("");
gotoxy(x+26+7,y+1);
printf("");
gotoxy(x+26,y+2);
printf("");
gotoxy(x+26+7,y+2);
printf("");
gotoxy(x+26,y+3);
printf("");
gotoxy(x+26+7,y+3);
printf("");
gotoxy(x+26,y+4);
printf("");
gotoxy(x+26,y+5);
printf("");
gotoxy(x+26,y+6);
printf("");
gotoxy(x+26,y+7);
printf("");
gotoxy(x+26,y+8);
printf("");
gotoxy(x+26,y+9);
printf("");
//8
textcolor(175);
for(i=0;i<10;i++)
{
gotoxy(x+39,y+i);
printf("");
}
textcolor(240);
gotoxy(x+42,y+2);
printf("");
gotoxy(x+42,y+3);
printf("");
gotoxy(x+42,y+6);
printf("");
gotoxy(x+42,y+7);
printf("");
//长条
ct(35,15,20,1,240);
printf("GameSart");
ct(35,18,20,1,240);
printf("Howtoplay");
printf("\n");
printf("\n\n\nMadebyMrYan");
gotoxy(35-25,15);
textcolor(255);
gotoxy(0,0);
}
/*画长条函数*/
voidct(intx,inty,intl,intk,intc)
{
inti=0,j=0;
textcolor(c);
gotoxy(x,y);
for(i=0;i<k;i++)
{
gotoxy(x,y+i);
for(j=0;j<l;j++)
{
printf("");
}
}
gotoxy(x+1,y+k/2);
}
voidshua(void)
{
gotoxy(0,18);
textcolor(255);
printf("\n");
printf("\n");
printf("\n");
printf("\n");
printf("\n");
printf("\n");
gotoxy(0,0);
}
/*胜利画面测试函数*/
inttest(void)
{
inti,t,yx;
charan;
textcolor(240);
gotoxy(0,0);
for(i=0;i<=500;i++)
{
printf("");
}
gotoxy(0,0);
HANDLEhOut=GetStdHandle(STD_OUTPUT_HANDLE);
CONSOLE_CURSOR_INFOcci;
GetConsoleCursorInfo(hOut,&cci);
cci.bVisible=FALSE;
SetConsoleCursorInfo(hOut,&cci);
//printf("\n游戏胜利!t\n重新开始游戏请按1\n继续游戏请按2\n退出请按其他键3\n");213

/*
2继续选中textcolor(240);
gotoxy(36,19);
printf("");
textcolor(159);
gotoxy(38,19);
printf("Continue");

2继续平常textcolor(240);
gotoxy(36,19);
printf("");
textcolor(159);
gotoxy(49,19);
printf("Continue");

1重新选中textcolor(240);
gotoxy(36,20);
printf("");
textcolor(239);
gotoxy(38,20);
printf("Restart");

1重新平常textcolor(240);
gotoxy(36,20);
printf("");
textcolor(239);
gotoxy(49,20);
printf("Restart");

3退出选中textcolor(240);
gotoxy(36,21);
printf("");
textcolor(175);
gotoxy(38,21);
printf("Exit");

3退出平常textcolor(240);
gotoxy(36,21);
printf("");
textcolor(175);
gotoxy(49,21);
printf("Exit");
//000000000000000000000000024
*/
shua();
ct(20,19,15,3,207);
printf("游戏胜利!");
textcolor(159);
gotoxy(38,19);
printf("Continue");

textcolor(239);
gotoxy(49,20);
printf("Restart");
textcolor(175);
gotoxy(49,21);
printf("Exit");
t=2;
an=75;
yx=0;
for(;;)
{
an=getch();
switch(an)
{
case72:
if(t==2)
{
t=3;
textcolor(240);
gotoxy(36,21);
printf("");
textcolor(175);
gotoxy(38,21);
printf("Exit");
textcolor(240);
gotoxy(36,19);
printf("");
textcolor(159);
gotoxy(47,19);
printf("Continue");
textcolor(240);
gotoxy(36,20);
printf("");
textcolor(239);
gotoxy(49,20);
printf("Restart");
}
elseif(t==1)
{
t=2;
textcolor(240);
gotoxy(36,19);
printf("");
textcolor(159);
gotoxy(38,19);
printf("Continue");
textcolor(240);
gotoxy(36,20);
printf("");
textcolor(239);
gotoxy(47,20);
printf("Restart");
textcolor(240);
gotoxy(36,21);
printf("");
textcolor(175);
gotoxy(49,21);
printf("Exit");
}
else
{
t=1;
textcolor(240);
gotoxy(36,20);
printf("");
textcolor(239);
gotoxy(38,20);
printf("Restart");
textcolor(240);
gotoxy(36,21);
printf("");
textcolor(175);
gotoxy(47,21);
printf("Exit");
textcolor(240);
gotoxy(36,19);
printf("");
textcolor(159);
gotoxy(49,19);
printf("Continue");
}
break;
case80:
if(t==2)
{
t=1;
textcolor(240);
gotoxy(36,20);
printf("");
textcolor(239);
gotoxy(38,20);
printf("Restart");
textcolor(240);
gotoxy(36,19);
printf("");
textcolor(159);
gotoxy(47,19);
printf("Continue");
textcolor(240);
gotoxy(36,21);
printf("");
textcolor(175);
gotoxy(49,21);
printf("Exit");
}
elseif(t==1)
{
t=3;
textcolor(240);
gotoxy(36,21);
printf("");
textcolor(175);
gotoxy(38,21);
printf("Exit");
textcolor(240);
gotoxy(36,20);
printf("");
textcolor(239);
gotoxy(47,20);
printf("Restart");
textcolor(240);
gotoxy(36,19);
printf("");
textcolor(159);
gotoxy(49,19);
printf("Continue");
}
else
{
t=2;
textcolor(240);
gotoxy(36,19);
printf("");
textcolor(159);
gotoxy(38,19);
printf("Continue");
textcolor(240);
gotoxy(36,21);
printf("");
textcolor(175);
gotoxy(47,21);
printf("Exit");
textcolor(240);
gotoxy(36,20);
printf("");
textcolor(239);
gotoxy(49,20);
printf("Restart");
}
break;
case'\r':
yx=1;
break;
}
if(yx==1)
{
yx=0;
break;
}
}
shua();
textcolor(255);
gotoxy(0,0);
textcolor(240);
if(t==2)
printf("Continue");
elseif(t==1)
printf("Restart");
else
printf("Exit");
return0;
}

关于“2048小游戏怎么使用C语言实现”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

发布于 2021-05-30 14:07:25
收藏
分享
海报
0 条评论
170
上一篇:VC++ 6.0 C语言如何实现俄罗斯方块 下一篇:C语言如何实现2048小游戏
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码