当前位置:首页 > 编程笔记 > 正文
已解决

C语言控制台程序按键控制

来自网友在路上 192892提问 提问时间:2023-11-11 19:01:46阅读次数: 92

最佳答案 问答题库928位专家为你答疑解惑

获取按键键值,实现光标控制,简单的推箱子游戏,以及计时处理。

// PushBox.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include "stdio.h"
#include "conio.h"
#include "time.h"
#include<windows.h>int main()
{COORD pos,pos1;pos.X=0;pos.Y=0;pos1.X=0;pos1.Y=0;system("color f1");time_t start,end;start =time(NULL);printf("按方向键(上下左右),开始推箱子游戏!\n");printf("x坐标为100,y坐标为20,获得胜利!\n");printf("b重新开始\n");while(1){if(_kbhit() !=0){system("CLS");//清屏_getch();switch(_getch()){//向上case 72:if(pos.Y>0)pos.Y=pos.Y-1;break;//向下case 80:pos.Y=pos.Y+1;break;//向左case 75:if(pos.X>0)pos.X=pos.X-1;break;  //向右case 77: pos.X=pos.X+1;break;  case 'b': case 'B': 				//复原system("CLS");//清屏system("color f1");printf("按方向键(上下左右),开始推箱子游戏!\n");printf("x坐标为100,y坐标为20,获得胜利!\n");printf("b重新开始\n");start =time(NULL);			pos.X=0,pos.Y=0;SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos);continue;		}//显示位置和时间SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 3);SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos1);printf("(%d,%d)",pos.X,pos.Y);end =time(NULL);printf("time=%.0f秒 [按b重新开始]",difftime(end,start));//显示箱体SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos);printf("\1");if(pos.X==100 && pos.Y==20)printf("successful!");}};return 1;
}

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"C语言控制台程序按键控制":http://eshow365.cn/6-37856-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!