激情六月丁香婷婷|亚洲色图AV二区|丝袜AV日韩AV|久草视频在线分类|伊人九九精品视频|国产精品一级电影|久草视频在线99|在线看的av网址|伊人99精品无码|午夜无码视频在线

高校合作1:010-59833514 ?咨詢電話:400-810-1418 服務(wù)與監(jiān)督電話:400-810-1418轉(zhuǎn)接2

c語(yǔ)言游戲開(kāi)發(fā)(C語(yǔ)言零基礎(chǔ)項(xiàng)目:打字母游戲!詳細(xì)思路+源碼分享)

發(fā)布時(shí)間:2023-11-27 05:58:06 瀏覽量:119次

?C語(yǔ)言零基礎(chǔ)項(xiàng)目:打字母游戲!詳細(xì)思路+源碼分享

c語(yǔ)言游戲開(kāi)發(fā)(C語(yǔ)言零基礎(chǔ)項(xiàng)目:打字母游戲!詳細(xì)思路+源碼分享)

每天一個(gè)C語(yǔ)言小項(xiàng)目,提升自己的編程能力!

《字母游戲》是一款有趣的打字游戲,可以提高你的打字速度。

今天就用C語(yǔ)言寫(xiě)了這么個(gè)打字母的小程序,就是以前學(xué)習(xí)機(jī)上那種字母往下掉,然后按相應(yīng)鍵字母消失的游戲。

程序不長(zhǎng),尤其很大篇幅都是開(kāi)始和結(jié)束的文字繪制,除去這些沒(méi)幾行代碼了,感覺(jué)做個(gè)范例還是很有用的。

又補(bǔ)了個(gè)小特效,加了點(diǎn)注釋?zhuān)瑴惲苏?100 行~

編譯環(huán)境: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("就是很傳統(tǒng)的那個(gè)掉字母然后按相應(yīng)鍵就消失的游戲"));
	outtextxy(100, 240, _T("只是做了一個(gè)簡(jiǎn)單的實(shí)現(xiàn)"));
	outtextxy(100, 280, _T("功能并不很完善,比如生命數(shù)、分?jǐn)?shù)等都沒(méi)有寫(xiě)"));
	outtextxy(100, 320, _T("感興趣的自己加進(jìn)去吧"));

	// 實(shí)現(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("多寫(xiě)程序  不老青春"));
	_getch();
}

// 主函數(shù)
int main()
{
	initgraph(640, 480);				// 初始化屏幕為 640x480

	welcome();							// 顯示歡迎界面

	srand((unsigned)time(NULL));		// 設(shè)置隨機(jī)種子
	settextstyle(20, 0, _T("Arial"));	// 設(shè)置字母的字體和大小
	setfillcolor(BLACK);				// 設(shè)置清除字母的填充區(qū)域顏色

	char target;						// 目標(biāo)字母
	char key;							// 用戶的按鍵
	int x, y;							// 字母的位置

	// 主循環(huán)
	while (true)
	{
		target = 65 + rand() % 26;		// 產(chǎn)生任意大寫(xiě)字母
		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))
				{
					// 按鍵正確,“擊落”字母(畫(huà)黑色方塊擦除)
					solidrectangle(x, y, x + 20, y + 20);
					break;				// 跳出循環(huán),進(jìn)行下一個(gè)字母
				}
				else if (key == 27)
				{
					goto EXIT;			// 如果按 ESC,退出游戲主循環(huán)
				}
			}

			// 延時(shí),并清除字母
			Sleep(10);
			solidrectangle(x, y, x + 20, y + 20);
		}
	}

EXIT:
	// 退出部分
	goodbye();

	// 關(guān)閉圖形界面
	closegraph();
	return 0;
}

大家趕緊去動(dòng)手試試吧!

此外,我也給大家分享我收集的其他資源,從最零基礎(chǔ)開(kāi)始的教程到C語(yǔ)言C++項(xiàng)目案例,幫助大家在學(xué)習(xí)C語(yǔ)言的道路上披荊斬棘!

c語(yǔ)言游戲開(kāi)發(fā)(C語(yǔ)言零基礎(chǔ)項(xiàng)目:打字母游戲!詳細(xì)思路+源碼分享)

編程學(xué)習(xí)書(shū)籍分享:

編程學(xué)習(xí)視頻分享:

整理分享(多年學(xué)習(xí)的源碼、項(xiàng)目實(shí)戰(zhàn)視頻、項(xiàng)目筆記,基礎(chǔ)入門(mén)教程)最重要的是你可以在群里面交流提問(wèn)編程問(wèn)題哦!

對(duì)于C/C++感興趣可以關(guān)注小編在后臺(tái)私信我【編程交流】一起來(lái)學(xué)習(xí)哦!可以領(lǐng)取一些C/C++的項(xiàng)目學(xué)習(xí)視頻資料哦!已經(jīng)設(shè)置好了關(guān)鍵詞自動(dòng)回復(fù),自動(dòng)領(lǐng)取就好了!

c語(yǔ)言游戲開(kāi)發(fā)(C語(yǔ)言零基礎(chǔ)項(xiàng)目:打字母游戲!詳細(xì)思路+源碼分享)

熱門(mén)課程推薦

熱門(mén)資訊

請(qǐng)綁定手機(jī)號(hào)

x

同學(xué)您好!

您已成功報(bào)名0元試學(xué)活動(dòng),老師會(huì)在第一時(shí)間與您取得聯(lián)系,請(qǐng)保持電話暢通!
確定