已解决
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 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!