发布时间:2023-11-27 05:58:06 浏览量:114次
每天一个C语言小项目,提升自己的编程能力!
《字母游戏》是一款有趣的打字游戏,可以提高你的打字速度。
今天就用C语言写了这么个打字母的小程序,就是以前学习机上那种字母往下掉,然后按相应键字母消失的游戏。
程序不长,尤其很大篇幅都是开始和结束的文字绘制,除去这些没几行代码了,感觉做个范例还是很有用的。
又补了个小特效,加了点注释,凑了整 100 行~
编译环境:Visual C++ 6.0 / VS2019/2022,EasyX插件
#include <graphics.h>
#include <conio.h>
#include <time.h>
// 欢迎界面
void welcome()
{
// 输出屏幕提示
cleardevice();
settextcolor(YELLOW);
settextstyle(64, 0, _T("黑体"));
outtextxy(160, 50, _T("打字母游戏"));
settextcolor(WHITE);
settextstyle(16, 0, _T("宋体"));
outtextxy(100, 200, _T("就是很传统的那个掉字母然后按相应键就消失的游戏"));
outtextxy(100, 240, _T("只是做了一个简单的实现"));
outtextxy(100, 280, _T("功能并不很完善,比如生命数、分数等都没有写"));
outtextxy(100, 320, _T("感兴趣的自己加进去吧"));
// 实现闪烁的“按任意键继续”
int c = 255;
while (!_kbhit())
{
settextcolor(RGB(c, 0, 0));
outtextxy(280, 400, _T("按任意键继续"));
c -= 8;
if (c < 50) c = 255;
Sleep(30);
}
_getch();
cleardevice();
}
// 退出界面
void goodbye()
{
cleardevice();
settextcolor(YELLOW);
settextstyle(48, 0, _T("黑体"));
outtextxy(104, 180, _T("多写程序 不老青春"));
_getch();
}
// 主函数
int main()
{
initgraph(640, 480); // 初始化屏幕为 640x480
welcome(); // 显示欢迎界面
srand((unsigned)time(NULL)); // 设置随机种子
settextstyle(20, 0, _T("Arial")); // 设置字母的字体和大小
setfillcolor(BLACK); // 设置清除字母的填充区域颜色
char target; // 目标字母
char key; // 用户的按键
int x, y; // 字母的位置
// 主循环
while (true)
{
target = 65 + rand() % 26; // 产生任意大写字母
x = rand() % 620; // 产生任意下落位置
for (y = 0; y < 460; y++)
{
settextcolor(WHITE); // 设置字母的颜色
outtextxy(x, y, target); // 显示字母
if (_kbhit())
{
key = _getch(); // 获取用户按键
if ((key == target) || (key == target + 32))
{
// 按键正确,“击落”字母(画黑色方块擦除)
solidrectangle(x, y, x + 20, y + 20);
break; // 跳出循环,进行下一个字母
}
else if (key == 27)
{
goto EXIT; // 如果按 ESC,退出游戏主循环
}
}
// 延时,并清除字母
Sleep(10);
solidrectangle(x, y, x + 20, y + 20);
}
}
EXIT:
// 退出部分
goodbye();
// 关闭图形界面
closegraph();
return 0;
}
大家赶紧去动手试试吧!
此外,我也给大家分享我收集的其他资源,从最零基础开始的教程到C语言C++项目案例,帮助大家在学习C语言的道路上披荆斩棘!
编程学习书籍分享:
编程学习视频分享:
整理分享(多年学习的源码、项目实战视频、项目笔记,基础入门教程)最重要的是你可以在群里面交流提问编程问题哦!
对于C/C++感兴趣可以关注小编在后台私信我:【编程交流】一起来学习哦!可以领取一些C/C++的项目学习视频资料哦!已经设置好了关键词自动回复,自动领取就好了!
热门资讯
探讨游戏引擎的文章,介绍了10款游戏引擎及其代表作品,涵盖了RAGE Engine、Naughty Dog Game Engine、The Dead Engine、Cry Engine、Avalanche Engine、Anvil Engine、IW Engine、Frostbite Engine、Creation引擎、Unreal Engine等引擎。借此分析引出了游戏设计领域和数字艺术教育的重要性,欢迎点击咨询报名。
游戏中玩家将面临武侠人生的挣扎抉择,战或降?杀或放?每个抉定都将触发更多爱恨纠葛的精彩奇遇。《天命奇御》具有多线剧情多结局,不限主线发展,高自由...
3. B站视频剪辑软件「必剪」:免费、炫酷特效,小白必备工具
B站视频剪辑软件「必剪」,完全免费、一键制作炫酷特效,适合新手小白。快来试试!
4. 手机游戏如何开发(如何制作传奇手游,都需要准备些什么?)
如何制作传奇手游,都需要准备些什么?提到传奇手游相信大家都不陌生,他是许多80、90后的回忆;从起初的端游到现在的手游,说明时代在进步游戏在更新,更趋于方便化移动化。而如果我们想要制作一款传奇手游的
5. 3D动画软件你知道几个?3ds Max、Blender、Maya、Houdini大比拼
当提到3D动画软件或动画工具时,指的是数字内容创建工具。它是用于造型、建模以及绘制3D美术动画的软件程序。但是,在3D动画软件中还包含了其他类型的...
三昧动漫对于著名ARPG游戏《巫师》系列,最近CD Projekt 的高层回应并不会推出《巫师4》。因为《巫师》系列在策划的时候一直定位在“三部曲”的故事框架,所以在游戏的出品上不可能出现《巫师4》
一、声音优化在绝地求生游戏中能够提前听到脚步声往往能提前取得战机,主要有两种方法:1、利用SoundLock软件,软件的功能主要是限制最大音量。百度搜索...
众所周知,虚幻引擎5(下面简称UE5)特别占用存储空间,仅一个版本安装好的文件就有60G,这还不包括我们在使用时保存的工程文件和随之产生的缓存文件。而...
UI设计师、动画设计师、特效设计师每一个职位的功能和负责的方面都不同。所以,3D美术这方面需要大量的人才。但是要成为一个3D游戏建模师,也不是那么...
想让你的3D打印模型更坚固?不妨尝试一下Cura参数设置和设计技巧,让你轻松掌握!
最新文章