日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个 嫌疑犯的一个。以下为4个嫌疑犯的供词。 A说:不是我。 B说:是C。 C说:是D。 D说:C在胡说 已知3个人说了真话,1个人说
日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个 嫌疑犯的一个。以下为4个嫌疑犯的供词。 A说:不是我。 B说:是C。 C说:是D。 D说:C在胡说 已知3个人说了真话,1个人说的是假话。 现在请根据这些信息,写一个程序来确定到底谁是凶手。 四重循环将四个人便利一遍,然后将四人的条件的进行判断 #include<stdio.h> #include<stdlib.h> int main() { int tmp[4] = { 0 }; int i; for (i = 0; i < 4; i++) { tmp[i] = 1; //先假设A是凶手 if ((tmp[0] != 1) + (tmp[2] == 1) + (tmp[3] == 1) + (tmp[3] != 1) == 3) { printf("%c是凶手", 'A' + i); } tmp[i] = 0; //如果条件不成立那么A不是凶手,开始假设B是凶手 } system("pause"); return 0; } 来源: CSDN 作者: 呦,来喽 链接: https://blog.csdn.net/qq_42649916/article/details/104442751