2022/02/04

API(Application Programming Interface):应用程序编程接口,即封装好的函数。如:fopen()函数,它的功能是让操作系统打开一个文件。

今天学着写了几个函数。

/*设置光标位置*/
void gotoxy(int x,int y)
{
    COORD c;
    c.X=x;
    c.Y=y;
    SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),c);
    //SetConsoleCursorPosition光标的位置控制函数
}
/*设置文字颜色函数*/
int color(int c)
{
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), c);        //更改文字颜色
	//SetConsoleTextAttribute是设置控制台窗口字体颜色和背景色的函数
	return 0;
}
/*开始界面*/
void welcometogame()
{
	int n;
	int i,j = 1;
	gotoxy(43,18);
	color(11);
	printf("贪 吃 蛇 游 戏");
	color(14);          			//黄色边框
	for (i = 20; i <= 26; i++)   	//输出上下边框┅
	{
		for (j = 27; j <= 74; j++)  //输出左右边框┇
		{
			gotoxy(j, i);
			if (i == 20 || i == 26)
			{
				printf("-");
            }
			else if (j == 27 || j == 74)
            {
				printf("|");
            }
		}
	}
	color(10);
	gotoxy(35, 22);
	printf("1.开始游戏");
	gotoxy(55, 22);
	printf("2.游戏说明");
	gotoxy(35, 24);
	printf("3.退出游戏");
	gotoxy(29,27);
	color(3);
	printf("请选择[1 2 3]:[ ]\b\b");        //\b为退格,使得光标处于[]中间
	color(14);
    scanf("%d", &n);    		//输入选项
    switch (n)
    {
    	case 1:					//选择开始游戏
    		system("cls");
			createMap();        //创建地图
			initsnake();        //初始化蛇身
			createfood();		//初始化食物
			keyboardControl();	//控制键盘按钮
        	break;
    	case 2:					//选择游戏说明
        	explation();
        	break;
    	case 3:					//选择退出游戏
        	exit(0);     		//退出游戏
        	break;
		default:				//输入非1~3之间的选项
			color(12);
			gotoxy(40,28);
			printf("请输入1~3之间的数!");
			getch();			//输入任意键
			system("cls");		//清屏
			printsnake();
			welcometogame();
    }
}

C:\Users\xiaom> dir %windir% 驱动器 C 中的卷是 OS 卷的序列号是 782A-9544 C:\Windows 的目录 2025/07/29 23:57 <DIR> . 2023/11/02 07:48 <DIR> appcompat 2025/07/12 17:52 <DIR> apppatch 2025/07/27 00:15 <DIR> AppReadiness 2023/09/14 01:04 102 AsPEToolVer.txt 2023/11/06 00:05 <DIR> assembly 2023/09/13 09:46 <DIR> ASUS 2023/09/13 09:46 230 ASUS_IMAGE.Ver 2024/02/14 15:28 <DIR> bcastdvr 2023/11/15 14:32 110,592 bfsvc.exe 2022/05/07 13:42 <DIR> Boot 2022/05/07 13:24 <DIR> Branding 2024/02/14 15:28 <DIR> BrowserCore 2025/07/22 20:39 <DIR> CbsTemp 2022/05/07 13:24 <DIR> Containers 2022/05/07 13:20 23,461 CoreCountrySpecific.xml 2022/06/03 08:34 10 csup.txt 2022/05/07 13:24 <DIR> Cursors 2024/04/18 00:30 <DIR> debug 2023/09/13 09:51 32,388 diagerr.xml 2022/05/07 13:42 <DIR> diagnostics 2023/11/15 22:33 <DIR> DiagTrack 2023/09/13 09:51 32,388 diagwrn.xml 2022/05/07 18:17 <DIR> DigitalLocker 2024/10/04 21:20 <DIR> Downloaded Installations 2022/05/07 18:17 <DIR> en-US 2024/02/14 14:43 5,356,504 explorer.exe 2023/11/01 18:10 <DIR> Firmware 2022/05/07 13:24 <DIR> GameBarPresenceWriter 2023/11/01 18:31 <DIR> Globalization 2022/05/07 18:17 <DIR> Help 2023/12/13 12:32 1,093,632 HelpPane.exe 2022/05/07 13:20 36,864 hh.exe 2022/05/07 13:42 <DIR> IdentityCRL 2022/05/07 18:17 <DIR> IME 2024/12/29 23:52 <DIR> ImmersiveControlPanel 2023/12/13 13:28 <DIR> InboxApps 2025/07/29 18:58 <DIR> INF 2022/05/07 13:42 <DIR> InputMethod 2022/05/07 13:24 <DIR> L2Schemas 2025/02/17 13:49 <DIR> LastGood 2025/01/22 21:28 <DIR> LastGood.Tmp 2025/03/27 08:37 <DIR> LiveKernelReports 2025/07/24 19:56 <DIR> Log 2025/07/22 19:44 <DIR> Logs 2022/05/07 13:42 <DIR> Media 2022/05/07 13:19 43,131 mib.bin 2025/07/26 19:51 <DIR> Microsoft.NET 2022/05/07 13:24 <DIR> Migration 2025/06/27 14:07 <DIR> Minidump 2022/05/07 13:24 <DIR> ModemLogs 2023/11/01 17:11 <DIR> Netease 2024/02/14 14:43 360,448 notepad.exe 2024/10/03 20:50 637,378 ntbtlog.txt 2025/04/07 23:51 1,951 NvContainerRecovery.bat 2022/05/07 18:18 <DIR> OCR 2023/09/13 09:46 <DIR> OEM 2022/05/07 13:24 <DIR> Offline Web Pages 2023/11/08 00:44 <DIR> Panther 2022/05/07 13:24 <DIR> Performance 2025/07/29 18:57 571,468 PFRO.log 2022/05/07 13:42 <DIR> PLA 2023/12/13 13:28 <DIR> PolicyDefinitions 2025/07/30 00:06 <DIR> Prefetch 2024/12/29 23:52 <DIR> PrintDialog 2024/02/14 15:28 <DIR> Provisioning 2024/12/03 20:57 772,976 py.exe 2024/12/03 20:58 53,104 pyshellext.amd64.dll 2024/12/03 20:57 770,552 pyw.exe 2022/05/07 13:20 552,960 regedit.exe 2022/05/07 13:42 <DIR> Registration 2022/05/07 13:24 <DIR> rescache 2022/05/07 13:42 <DIR> Resources 2022/05/07 13:24 <DIR> SchCache 2022/05/07 13:42 <DIR> schemas 2022/05/07 13:42 <DIR> security 2022/06/03 08:31 <DIR> ServiceProfiles 2025/07/29 18:57 <DIR> ServiceState 2023/12/13 13:28 <DIR> servicing 2022/05/07 13:28 <DIR> Setup 2025/07/29 18:58 80,580 setupact.log 2025/07/19 19:17 0 setuperr.log 2024/02/14 15:28 <DIR> ShellComponents 2024/01/10 21:47 <DIR> ShellExperiences 2022/05/07 13:42 <DIR> SKB 2025/07/22 20:37 <DIR> SoftwareDistribution 2024/10/22 12:36 <DIR> SoftwareDistribution.old 2022/05/07 13:24 <DIR> Speech 2022/05/07 13:24 <DIR> Speech_OneCore 2023/11/15 14:32 192,512 splwow64.exe 2022/05/07 13:24 <DIR> System 2022/05/07 13:22 219 system.ini 2025/07/29 18:57 <DIR> System32 2023/11/01 18:31 <DIR> SystemApps 2024/02/14 15:28 <DIR> SystemResources 2025/07/30 00:07 <DIR> SystemTemp 2025/07/02 20:27 <DIR> SysWOW64 2022/05/07 13:24 <DIR> TAPI 2024/10/03 20:46 <DIR> Tasks 2025/07/29 22:59 5,697,152 tbus_1400072873 2025/07/29 10:34 466,784 tbus_1700009696 2025/07/30 00:00 <DIR> Temp 2023/11/01 17:33 <DIR> tracing 2023/11/01 17:33 <DIR> twain_32 2022/05/07 13:20 69,120 twain_32.dll 2024/05/05 14:22 <DIR> USR-VCOM 2024/02/14 15:28 <DIR> UUS 2022/05/07 13:24 <DIR> Vss 2022/05/07 13:24 <DIR> WaaS 2022/05/07 13:42 <DIR> Web 2022/05/07 13:22 92 win.ini 2022/05/07 13:20 12,288 winhlp32.exe 2024/10/22 12:20 <DIR> WinSxS 2022/05/07 18:27 316,640 WMSysPr9.prx 2022/05/07 04:16 28,672 write.exe 2023/11/01 18:31 <DIR> WUModels 2022/05/07 18:27 <DIR> zh-CN 30 个文件 17,314,198 字节 87 个目录 71,749,197,824 可用字节
07-31
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值