某地发生了谋杀案,以下为警方得到的4个嫌疑人的证词:
A说: 不是我.
B说: 是C.
C说: 是D.
D说: C在胡说.
已知三个人说的真话,一个人说的假话,请编写一个程序判断谁是凶手.(摘自《Linux C编程实战》)
代码如下:#include <stdio.h>
int main (void)
{int i, sum = 0, flag = 0;char killer;for(i = 0; i < 4; i++)//遍历ABCD四人{killer = 65 + i;sum = (killer != 'A') + (killer == 'C') + (killer == 'D') + (killer != 'D');if(sum == 3)//判断是否是三人为真,一人为假{flag = 1;printf("%c is killer.\n", killer);break;}}if(!flag)printf("Can not find.\n");return 0;
}