saber the saber 2022-10-13 18:46 采纳率: 77.8%
浏览 20
已结题

请问这个程序有什么问题?

循环相克令是一个两人玩的小游戏。

令词为“猎人、狗熊、枪”,两人同时说出令词,同时做出一个动作——猎人的动作是双手叉腰;狗熊的动作是双手搭在胸前;枪的动作是双手举起呈手枪状。

双方以此动作判定输赢,猎人赢枪、枪赢狗熊、狗熊赢猎人,动作相同则视为平局。

现在给定你一系列的动作组合,请你判断游戏结果。

输入格式

第一行包含整数 T
,表示共有 T
组测试数据。

接下来 T
行,每行包含两个字符串,表示一局游戏中两人做出的动作,字符串为 Hunter, Bear, Gun 中的一个,这三个单词分别代表猎人,狗熊和枪。

输出格式

如果第一个玩家赢了,则输出 Player1。

如果第二个玩家赢了,则输出 Player2。

如果平局,则输出 Tie。

数据范围

1≤N≤100

输入样例

3
Hunter Gun
Bear Bear
Hunter Bear
输出样例

Player1
Tie
Player2
void game(char ch1[8],char ch2[8])
{
if(ch1==”Hunter”&&ch2==”Gun”||ch1==”Gun”&&ch2==”Bear”||ch1==”Bear”&&ch2==”Hunter”)
printf(“Player1”);
else if(ch2==”Hunter”&&ch1==”Gun”||ch2==”Gun”&&ch1==”Bear”||ch2==”Bear”&&ch1==”Hunter”)
printf(“player2”);
else
printf(“Tie”);
return;
}
int main()
{
int T;
scanf(“%d”,&T);
int i;
char ch1[8],ch2[8];
for(i=1;i<=T;i++){
scanf(“%s %s”,ch1,ch2);
game(ch1,ch2);
}

return 0;
}

  • 写回答

1条回答 默认 最新

  • honestman_ 2022-10-13 19:02
    关注
    
    //合并字符串以减少判断情况 
    
    #include<iostream>
    
    using namespace std;
    
    int main()
    {
        int t;
        cin >> t;
        
        string p1, p2, p3;
        for (int i = 0; i < t; i ++)
        {
            cin >> p1 >>p2;
            p3 = p1 + p2;
            if (p1 == p2) cout << "Tie" <<endl;
            else if (p3 == "HunterGun" || p3 == "GunBear" || p3 == "BearHunter")
                cout << "Player1" << endl;
            else cout << "Player2" << endl;
        }
        
        
        
        
        
        return 0;
    } 
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月11日
  • 已采纳回答 11月3日
  • 创建了问题 10月13日

悬赏问题

  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测