公安人员审问四名窃贼嫌疑犯。已知,这四人当中仅有一名是窃贼,还知道这四人中每人要么是诚实的,要么总是说谎的。在回答公安人员的问题中:
甲说:“乙没有偷,是丁偷的。”
乙说:“我没有偷,是丙便的。”
丙说:“甲没有偷,是乙偷的。”
丁说:“我没有偷。”
#include<stdio.h>
int main()
{
 int i,j,a[4];
 for(i=0;i<4;i++) /*假定只有第i个人为窃贼*/
 {
  for(j=0;j<4;j++) /*将第i个人设置为1表示窃贼,其余为0*/
   if(j==i)a[j]=1;
   else a[j]=0;
  if(a[3]+a[1]==1&&a[1]+a[2]==1&&a[0]+a[1]==1) /*判断条件是否成立*/
  {
   printf("The thief is "); /*成立*/
   for(j=0;j<=3;j++) /*输出计算结果*/
    if(a[j])printf("%c.",j+'A');
   printf("\n");
  }
 }
}
posted on 2023-04-27 23:17    阅读(34)  评论(0)    收藏  举报