一道C++编程题~~急用~!~!

2024-12-28 20:36:39
推荐回答(3个)
回答1:

一定要看我的哦,试试也行。效果会让你很满意的
#include
#include

using namespace std;
//定义这个球员类
class role
{
private:
char m_name;//球员变量
public:
//构造函数
role(char name = NULL)
{
char m_name = name;
}
//射门函数
void shoot()
{
char m_select;//系统随即变量,存储小写字母
char m_select2;//系统随即变量,存储大写字母
char select;//拥护选择变量
cout << "提示:q:左上/a:左下/w:中间/e:右上/d:右下\n"
<< "裁判一声哨响,请选择射门方向:(q/a/w/e/d)\n";
cin >> select;
if(select != 'q' && select != 'Q' && select != 'a' && select != 'A' &&
select != 'w' && select != 'W' && select != 'e' && select != 'E' &&
select != 'd' && select != 'D')
{
cout << "射门偏出~~\n";
return;
}
int _select = rand()%5;//随即生成方向
switch(_select)
{
case 1:
m_select = 'q';
m_select2 = 'Q';
break;
case 2:
m_select = 'a';
m_select2= 'A';
break;
case 3:
m_select = 'w';
m_select2 = 'W';
break;
case 4:
m_select = 'e';
m_select2 = 'E';
break;
case 5:
m_select = 'd';
m_select2 = 'D';
break;
}
if(select == m_select||select == m_select2)
{
cout << "球进啦~!" << endl;
}else{
cout << "射门被守门员神奇地扑出~!" << endl;
}
}
};

//程序入口
int main()
{
bool bl=true;
char c;
srand(time(NULL));//初始化
char _player;
do{
cout << "***************欢迎来到点球小游戏***************\n请选择一个球员来进行(a:小贝/b:齐祖/c:C罗/d:郑智)(a/b/c/d)\n";
cin >> _player;
system("cls");
if(_player != 'a' && _player != 'A' && _player != 'b' && _player != 'B' &&
_player != 'c' && _player != 'C' && _player != 'd' && _player != 'D')
{
cout << "对不起,没有这个球员!\n";
cout<<"是否想继续游戏?(y/n)";
cin>>c;
system("cls");
if (c=='y'||c=='Y')bl=true;
else if(c=='n'||c=='N')bl=false;
else bl=false;
//return 0;
}
else{
role player(_player);//使用选定的球员身份进行游戏,定义这个对象
player.shoot();

cout<<"是否想继续游戏?(y/n)";
cin>>c;
system("cls");
if (c=='y'||c=='Y')bl=true;
else if(c=='n'||c=='N')bl=false;
else bl=false;
}}while (bl);//调用射门方法
return 0;
}

回答2:

在前面加一个#include

再将main()函数这么改一下:
//程序入口
int main()
{
srand(time(NULL));//初始化
char _player;
do{cout << "***************欢迎来到点球小游戏***************\n请选择一个球员来进行(a:小贝/b:齐祖/c:C罗/d:郑智)(a/b/c/d)\n";
cin >> _player;
if(_player != 'a' && _player != 'A' && _player != 'b' && _player != 'B' &&
_player != 'c' && _player != 'C' && _player != 'd' && _player != 'D')
{
cout << "对不起,没有这个球员!\n";
return;
}
role player(_player);//使用选定的球员身份进行游戏,定义这个对象
player.shoot();
cout << "是否想继续游戏?(y/n): \n";
}while (getch()=='y');//调用射门方法
return;
}

回答3:

把main函数中的内容用do..while语句循环,循环条件就用判断按的是y还是n,最后那个return;去掉.