该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
bar(x, y, x + 16, y + 16);
break; // 跳出循环,进行下一个字母
}
else if (key == 27)
{
goto EXIT; // 如果按 ESC,退出游戏主循环
}
}
// 延时,并清除字母
Sleep(5);
bar(x, y, x + 16, y + 16);
}
}
EXIT:
// 退出部分
goodbye();
// 关闭图形界面
closegraph();
}
void level3()
{float a=0,b=0;
char l[30][10]={"myth\0","true\0","good\0","love\0","soft\0","nice\0","kind\0","warm\0","help\0","safe\0","face\0","head\0","able\0","when\0","ated\0","joke\0","pass\0","keep\0","look\0","food\0","give\0","take\0","hold\0","make\0","keep\0","some\0","mind\0","play\0","more\0","less\0"};
//初始定义单词 initgraph(680, 480); // 初始化屏幕为 640x480
srand(time(NULL)); // 设置随机种子
setfont(16, 0, "Arial"); // 设置字母的字体和大小
setfillstyle(BLACK);// 设置清除字母的填充区域颜色
int n; // 目标字母
char key; // 用户的按键
int x, y; // 字母的位置
// 主循环
while(true)
{
n=rand()%30;
b++; // 产生任意大写字母
x = rand() % 620; // 产生任意下落位置
for (y=0; y<460; y++)
{
setcolor(WHITE); // 设置字母的颜色
outtextxy(x, y, l[n]); // 显示字母
if( kbhit() )
{
int i,re=0; // 获取用户输入,并确认是否正确
for(i=0 ;l[n][i]!='\0';i++)
{
key=getch();
if(l[n][i]==key)
{setcolor(YELLOW);outtextxy(x+6*i,y+15 ,l[n][i]) ; continue;}
else {re++;break;}
}
if(re==0)
{
// 按键正确,"击落"字母(画黑色方块擦除)
bar(x, y, x + 35, y + 30); // 跳出循环,进行下一个字母
break;
}
else if (key == 27)
{
goto EXIT; // 如果按 ESC,退出游戏主循环
}
}
// 延时,并清除字母
Sleep(3);
bar(x, y, x + 16, y + 16);
}
}
EXIT:
// 退出部分
goodbye();
// 关闭图形界面
closegraph();
} void level4()
{float a=0,b=0;
char l[10][35]={"A bad thing never dies\0","A good book is a good friends\0","A good medicine taste bitter\0","All roads lead to Rome\0","All rivers run into sea\0","All that ends well is well\0","Blood well is blood\0","Business is business\0","Cry for the moon\0","Do as romans do\0"}; initgraph(680, 480); // 初始化屏幕为 640x480
srand(time(NULL)); // 设置随机种子
setfont(16, 0, "Arial"); // 设置字母的字体和大小
setfillstyle(BLACK);// 设置清除字母的填充区域颜色
int n; // 目标字母
char key; // 用户的按键
int x, y; // 字母的位置
welcome();
// 主循环
while(true)
{
n=rand()%10;
b++; // 产生任意大写字母
x = rand() % 620; // 产生任意下落位置
for (y=0; y<460; y++)
{
setcolor(WHITE); // 设置字母的颜色
outtextxy(x, y, l[n]); // 显示字母
if( kbhit() )
{
int i,re=0; // 获取用户输入,并确认是否正确
for(i=0 ;l[n][i]!='\0';i++)
{
key=getch();
if(l[n][i]==key)
{setcolor(YELLOW);outtextxy(x+6*i,y+15 ,l[n][i]) ; continue;}
else {re++;break;}
}
if(re==0)
{
// 按键正确,"击落"字母(画黑色方块擦除)
bar(x, y, x + 270, y + 32); // 跳出循环,进行下一个字母
break;
}
else if (key == 27)
{
goto EXIT; // 如果按 ESC,退出游戏主循环
}
}
// 延时,并清除字母
Sleep(2);
bar(x, y, x + 170, y + 16);
}
}
EXIT:
// 退出部分
goodbye();
// 关闭图形界面
closegraph();
} void main()
{
initgraph(640, 480);
welcome();
cleardevice();
setcolor(YELLOW);
setfont(64, 0, "黑体");
outtextxy(160, 50, "打字母游戏");
setcolor(WHITE);
setfont(16, 0, "宋体");
outtextxy(100, 200, "接下来 欢迎来到地狱");
outtextxy(100, 240, "在一切开始之前,请先选择您将面对的挑战");
outtextxy(100, 280, "1.纯大写字母,欢迎小盆友们选择");
outtextxy(100, 320, "2.大小写混合,继续欢迎小盆友们选择");
outtextxy(100,360,"3.单词,对于大家是个不错的选择");
outtextxy(100,400,"4.句子,相信我,一切开始于结束之后");
outtextxy(100,440,"*************************************");
int choose;
scanf("%d",&choose);
cleardevice();
switch(choose)
{
case 1:
level1();
case 2:
level2();
case 3:
level3();
case 4:
level4();
}
}