1. 程式人生 > >推理題-誰是小偷?

推理題-誰是小偷?

警察抓住了ABCD四名盜竊嫌疑犯,其中只有一人是小偷。在審問時,

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是小偷。