警察抓住了A、B、C、D四名盗窃嫌疑犯,其中只有一人是小偷。在审问时,
A说:“我不是小偷”;
B说:“C是小偷”;
C说:“小偷肯定是D”;
D说:“C在冤枉好人”。
现在已经知道这四人中有三人说的是真话,一人说的是假话。请问到底谁是小偷?
环境:VC++6.0
.CPP文件:
#include<stdio.h>
int main()
{
int A,B,C,D;
char i;
printf("小偷是:");
for(i='A';i<='D';i++)
{
A=(i!='A');//A说:“我不是小偷”
B=(i=='C');//B说:“C是小偷”;
C=(i=='D');//C说:“小偷肯定是D”;
D=(i!='D');//D说:“C在冤枉好人”。
if(A+B+C+D==3)//四人中有三人说的是真话
printf("%c",i);//打印谁是小偷
}
printf("\n");
}
运行结果:
显然,C是小偷。