控制台输入输出发射炮弹

#include <bits/stdc++.h>
#include <windows.h>
#include <conio.h>//控制台输入输出头文件
using namespace std;
int main(){
    HANDLE handle=GetStdHandle(STD_OUTPUT_HANDLE);//获取标准输出的句柄
    COORD coord={0,0};//保存光标坐标
    SetConsoleCursorPosition(handle,coord);
    HANDLE handle1=GetStdHandle(STD_OUTPUT_HANDLE);
    COORD coord1={1,0};
    SetConsoleCursorPosition(handle,coord);
    cout<<"HH";
    SetConsoleCursorPosition(handle1,coord1);
    cout<<"H";
    while(1){
        if(kbhit()){
            SetConsoleCursorPosition(handle,coord);
            cout<<"  ";
            SetConsoleCursorPosition(handle1,coord1);
            cout<<" ";
            int key=getch();
            switch(key){
                case 72: coord.Y--;coord1.Y--;break;
                case 75: coord.X--;coord1.X--;break;
                case 77: coord.X++;coord1.X++;break;
                case 80: coord.Y++;coord1.Y++;break;
                case 119: 
				while(coord1.Y>1){
                	SetConsoleCursorPosition(handle,coord);
                    cout<<"HH";
                    coord1.Y--;
                    SetConsoleCursorPosition(handle1,coord1);
                    cout<<"H";
                    Sleep(30);
                    SetConsoleCursorPosition(handle1,coord1);
                    cout<<" ";
				}
				coord1.Y=coord.Y;
				break;
				case 115: 
				while(coord1.Y<30){
                	SetConsoleCursorPosition(handle,coord);
                    cout<<"HH";
                    coord1.Y++;
                    SetConsoleCursorPosition(handle1,coord1);
                    cout<<"H";
                    Sleep(30);
                    SetConsoleCursorPosition(handle1,coord1);
                    cout<<" ";
				}
				coord1.Y=coord.Y;
				break;
				case 97: 
				while(coord1.X>1){
                	SetConsoleCursorPosition(handle,coord);
                    cout<<"HH";
                    coord1.X--;
                    SetConsoleCursorPosition(handle1,coord1);
                    cout<<"H";
                    Sleep(30);
                    SetConsoleCursorPosition(handle1,coord1);
                    cout<<" ";
				}
				coord1.X=coord.X;
				break;
				case 100: 
				while(coord1.X<38){
                	SetConsoleCursorPosition(handle,coord);
                    cout<<"HH";
                    coord1.X++;
                    SetConsoleCursorPosition(handle1,coord1);
                    cout<<"H";
                    Sleep(30);
                    SetConsoleCursorPosition(handle1,coord1);
                    cout<<" ";
				}
				coord1.X=coord.X;
				break;
                default: break;
            }
            SetConsoleCursorPosition(handle,coord);
            cout<<"HH";
        }   
    }
    return 0;
}

  

posted @ 2024-04-20 15:59  fushuxuan1  阅读(16)  评论(0)    收藏  举报