//屏幕操作函数
#include //时间函数
void welcome() //欢迎界面
{
cleardevice(); //清屏函数(清除图形),system(清除文字)
setcolor(YELLOW); //设置当前画线颜色
setfont(64, 0, "黑体"); //设置字体分别为字体、字号字型
outtextxy(160, 50, "打字母游戏"); //在指定位置显示字符串
setcolor(WHITE); //设置当前画线颜色
setfont(16, 0, "宋体"); //设置字体分别为字体、字号字型
outtextxy(100, 200, "就是很传统的那个掉字母然后按相应键就消失的游戏"); //在指定位置显示字符串
outtextxy(100, 240, "只是做了一个简单的实现"); //在指定位置显示字符串
outtextxy(100, 280, "功能并不很完善,比如生命数、分数等都没有写"); //在指定位置显示字符串
outtextxy(100, 320, "感兴趣的自己加进去吧"); //在指定位置显示字符串
int c=255; //以下代码实现红色闪烁文字输出
while(!kbhit()) // kbhit()头文件名为conio.h,功能为检查当前是否有任意键按下
{
setcolor(RGB(c, 0, 0)); //设置显示为红色
outtextxy(280, 400, "按任意键继续"); //指定位置输出字符串
c -= 8;
if (c < 0) c = 255;
Sleep(20); //延时20毫秒
}
getch();
cleardevice(); //清空图形屏幕
}
void goodbye()
{
cleardevice();
setcolor(YELLOW);
setfont(48, 0, "黑体");
outtextxy(104, 180, "多写程序 不老青春");
getch();
}
void main()
{
initgraph(640, 480); //初始化图形系统
welcome();//调用函数:欢迎界面
srand(time(NULL));//随机函数
setfont(16, 0, "Arial"); //设置字母字型
setfillstyle(BLACK);//填充颜色
char target;//定义变量
char key;
int x, y;
while(true)
{
target = 65 + rand() % 26;//产生随机大写字母
x = rand() % 620;//产生任意下落位置
for (y=0; y<460; y++) {
setcolor(WHITE);
outtextxy(x, y, target);
if(kbhit())
{
key = getch();//用户输入字母
if((key == target) || (key == target + 32))
{
bar(x, y, x + 16, y + 16); //画一个矩形框
break;//跳出for循环
}
else if (key == 27)
{
goto EXIT;
}
}
Sleep(10);
bar(x, y, x + 16, y + 16);
}
}
EXIT:
goodbye();
closegraph();
}