贪吃蛇(C语言版)

    软件测试课程设计,老师让写一个贪吃蛇,Em......,快要交了,查了查网上的代码,仿照着写了一个,一个下午加一个晚上的时间,感觉还不错哈哈哈(主要是学到了一些新的函数嘿嘿嘿)

    首先我们的学会用几个函数,如下:

    1.将光标移动到指定位置

        基本方法是通过封装 windows 头文件里的 SetConsoleCursorPosition 函数实现

//转移光标到目标位置
void goTo( int x , int y , int z ) {
	HANDLE hout = GetStdHandle( STD_OUTPUT_HANDLE );
	COORD cor;
	cor.X = y;
	cor.Y = x;
	SetConsoleCursorPosition( hout,cor );
	SetColor( hout,z );
}

    2.设置字体的颜色,及上面代码中 SetColor 函数

        同样利用了 windows 头文件里面的函数 SetConsoleTextAttribute

/***************************************
 * 设置字符,背景颜色
 * SetConsoleTextAttribute( hout,0xXX )
 * 第一个X为背景色,第二个X为前景色
 * 0 = 黑    1 = 蓝    2 = 绿    3 = 浅绿
 * 4 = 红    5 = 紫    6 = 黄    7 = 白
 * 8 = 灰    9 = 淡蓝  A = 淡绿  B =  淡浅绿
 * C = 淡红  D = 淡紫  E = 淡黄  F = 亮白
 ***************************************/
#define SetColor SetConsoleTextAttribute

    3.键盘输入控制方向

		if( GetKey(VK_SPACE) ) {
			pause();
		} else if( GetKey(VK_UP) ) {
			status='L';
		} else if( GetKey(VK_DOWN) ) {
			status='R';
		} else if( GetKey(VK_LEFT) ) {
			status='U';
		} else if( GetKey(VK_RIGHT) ) {
			status='D';
		}

//游戏暂停
void pause(){
	while(1){
		goTo( 21,75,7 );
		printf( "Press SPACE to continue" );
		Sleep(sleepTime);
		if( GetKey(VK_SPACE) )
			break;
	}
} 

	//判断方向 
	switch( dir ) {
		case 'D':
			h->x = head->x;
			h->y = head->y + 1;
			break;
		case 'L':
			h->x = head->x - 1;
			h->y = he
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值