日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个 嫌疑犯的一个。以下为4个嫌疑犯的供词。

日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个 
嫌疑犯的一个。以下为4个嫌疑犯的供词。 
A说:不是我。 
B说:是C。 
C说:是D。 
D说:C在胡说 
已知3个人说了真话,1个人说的是假话。 
现在请根据这些信息,写一个程序来确定到底谁是凶手。 

定义一个char型变量murder来表示凶手,可利用字符的ASCII码值可以从'A'到'D'进行循环遍历,利用"=="和"!="的结果为0或1这个规则来判断说真话的人的个是否为3。

#include<stdio.h>
#include<stdlib.h>
int main()
{

    int murder;
    for (murder = 'A'; murder <= 'D'; murder++)
    {
        if ((murder != 'A') + (murder == 'C') + (murder == 'D' )+ (murder != 'D') == 3)
            printf("murder is %c", murder);
    }

    system("pause");
    return 0;
}

猜你喜欢

转载自blog.csdn.net/w838325636/article/details/85690595