#include<iostream>
#include<windows.h>
#include<cstdlib>
#include<ctime>
using namespace std;
struct pos{
int x;
int y;
}a[1001];
int main(){
srand(time(0));
int score=0,posa=0,tmp2=1,wji=10,wjj=5;
char map[11][11]={' '};
char op=' ';
map[10][5]='Y';
while(true){
tmp2++;
if(tmp2%10==0){ //控制刷新频率
for(int i=1;i<=10;i++){ //随机5个标靶
int tmp=rand()%500;
if(a[posa].x==0){
tmp=a[posa].x;
}
else if(a[posa].x!=0&&a[posa].y==0){
tmp=a[posa].y;
}
else{
posa++;
tmp=a[posa].x;
}
}
for(int i=0;i<5;i++){ //这5个标靶做上标记
map[a[i].x][a[i].y]='B';
}
}
//战场显示
for(int i=0;i<1000;i++){
for(int j=0;j<1000;j++){
cout<<map[i][j];
}
cout<<endl;
}
cin>>op;
//玩家移动操作
if(op=='w'||op=='W'){
map[wji-1][wjj]='Y';
map[wji][wjj]=' ';
system("cls");
}
if(op=='a'||op=='A'){
map[wji][wjj-1]='Y';
map[wji][wjj]=' ';
system("cls");
}
if(op=='d'||op=='D'){
map[wji][wjj+1]='Y';
map[wji][wjj]=' ';
system("cls");
}
if(op=='s'||op=='S'){
map[wji+1][wjj]='Y';
map[wji][wjj]=' ';
system("cls");
}
if(op=='g'||op=='G'){
//攻击的情况下
for(int i=0;i<wjj;i++){
if(map[wji][i]=='B'){
map[wji][i]=' ';
score+=10;
}
system("cls");
}
}
cout<<"得分:"<<score<<endl;
}
return 0;
}
大佬们看看我这个打标靶代码哪错了,老是输出一堆乱码