题目内容:
日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个嫌疑犯的一个。
以下为4个嫌疑犯的供词:
A说:不是我。
B说:是C。
C说:是D。
D说:C在胡说
已知3个人说了真话,1个人说的是假话。
现在请根据这些信息,写一个程序来确定到底谁是凶手。
利用条件“已知3个人说了真话,1个人说的是假话”来判断 假设凶手是A B C D
A说:不是我。 错 对 对 对
B说:是C。 错 错 对 错
C说:是D。 错 错 错 对
D说:C在胡说、 对 对 对 错
#include <stdio.h>
int main()
{
char killer = 0;
for(killer = 'A'; killer <= 'D'; killer++)
{
if((killer != 'A')+ (killer == 'C')+ (killer == 'D')+ (killer != 'D') == 3)
//A说:不是我。 B说:是C。 C说:是D。 D说:C在胡说
{
printf("犯人是%c", killer);
}
}
return 0;
}