C语言使用if-else处理过独木桥问题

题目描述

有一个人过一座独木桥,他的前面有狼,后面有虎,桥下面是汹涌的江水,请问你的选择是?

A:前进,B:后退,C:跳水

如果选A,请问他是否打得过狼? Y:他能,N:他不能

如果选B,请问他是否能打得过虎? Y:他能,N:他不能

如果选C,请问他是否能游泳? Y;他能,N:他不能

根据你的选择,输出最后的结果: 安全通过,被狼吃,被虎吃,被淹死其中之一

解决思路

这是一个经典的逻辑推理问题。根据题目描述,我们可以用条件判断的方式来模拟这个选择过程。

首先,我们根据选择的结果来判断最终的情况:

  • 如果选择 A,即前进,而且他能打得过狼,则他能够安全通过。
  • 如果选择 A,但他打不过狼,则被狼吃。
  • 如果选择 B,即后退,而且他能打得过虎,则他能够安全通过。
  • 如果选择 B,但他打不过虎,则被虎吃。
  • 如果选择 C,即跳水,而且他能游泳,则他能够安全通过。
  • 如果选择 C,但他不能游泳,则被淹死。

源代码

#include <stdio.h>

int main() {
    char choice;
    char result;

    printf("请选择你的行动(A:前进,B:后退,C:跳水):");
    scanf(" %c", &choice);

    if (choice == 'A') {
        printf("请问他是否打得过狼?(Y/N):");
        scanf(" %c", &result);
        if (result == 'Y') {
            printf("安全通过\n");
        } else {
            printf("被狼吃\n");
        }
    } else if (choice == 'B') {
        printf("请问他是否能打得过虎?(Y/N):");
        scanf(" %c", &result);
        if (result == 'Y') {
            printf("安全通过\n");
        } else {
            printf("被虎吃\n");
        }
    } else if (choice == 'C') {
        printf("请问他是否能游泳?(Y/N):");
        scanf(" %c", &result);
        if (result == 'Y') {
            printf("安全通过\n");
        } else {
            printf("被淹死\n");
        }
    } else {
        printf("无效的选择\n");
    }

    return 0;
}

在这个简单的程序中,用户可以输入选择以及对应的结果,程序会根据选择和结果输出最终的情况。希望这个实现能够帮助到您!

图片[1]-C语言使用if-else处理过独木桥问题-QQ沐编程

© 版权声明
THE END
喜欢就支持一下吧
点赞9赞赏 分享