《字母游戲》是一款有趣的打字游戲,可以提高你的打字速度。
今天就用C語言寫了這么個打字母的小程序,就是以前學習機上那種字母往下掉,然后按相應(yīng)鍵字母消失的游戲。
程序不長,尤其很大篇幅都是開始和結(jié)束的文字繪制,除去這些沒幾行代碼了,感覺做個范例還是很有用的。
又補了個小特效,加了點注釋,湊了整 100 行~
編譯環(huán)境:Visual C++ 6.0 / VS2019/2022,EasyX插件
源碼示例:
?
#include#include #include // 歡迎界面 void welcome() { // 輸出屏幕提示 cleardevice(); settextcolor(YELLOW); settextstyle(64, 0, _T("黑體")); outtextxy(160, 50, _T("打字母游戲")); settextcolor(WHITE); settextstyle(16, 0, _T("宋體")); outtextxy(100, 200, _T("就是很傳統(tǒng)的那個掉字母然后按相應(yīng)鍵就消失的游戲")); outtextxy(100, 240, _T("只是做了一個簡單的實現(xiàn)")); outtextxy(100, 280, _T("功能并不很完善,比如生命數(shù)、分數(shù)等都沒有寫")); outtextxy(100, 320, _T("感興趣的自己加進去吧")); // 實現(xiàn)閃爍的“按任意鍵繼續(xù)” int c = 255; while (!_kbhit()) { settextcolor(RGB(c, 0, 0)); outtextxy(280, 400, _T("按任意鍵繼續(xù)")); 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(); } // 主函數(shù) int main() { initgraph(640, 480); // 初始化屏幕為 640x480 welcome(); // 顯示歡迎界面 srand((unsigned)time(NULL)); // 設(shè)置隨機種子 settextstyle(20, 0, _T("Arial")); // 設(shè)置字母的字體和大小 setfillcolor(BLACK); // 設(shè)置清除字母的填充區(qū)域顏色 char target; // 目標字母 char key; // 用戶的按鍵 int x, y; // 字母的位置 // 主循環(huán) while (true) { target = 65 + rand() % 26; // 產(chǎn)生任意大寫字母 x = rand() % 620; // 產(chǎn)生任意下落位置 for (y = 0; y < 460; y++) { settextcolor(WHITE); // 設(shè)置字母的顏色 outtextxy(x, y, target); // 顯示字母 if (_kbhit()) { key = _getch(); // 獲取用戶按鍵 if ((key == target) || (key == target + 32)) { // 按鍵正確,“擊落”字母(畫黑色方塊擦除) solidrectangle(x, y, x + 20, y + 20); break; // 跳出循環(huán),進行下一個字母 } else if (key == 27) { goto EXIT; // 如果按 ESC,退出游戲主循環(huán) } } // 延時,并清除字母 Sleep(10); solidrectangle(x, y, x + 20, y + 20); } } EXIT: // 退出部分 goodbye(); // 關(guān)閉圖形界面 closegraph(); return 0; }
?
大家趕緊去動手試試吧!
審核編輯:湯梓紅
?
評論
查看更多