C语言编程,抓偷木头犯人

已知4个疑犯中有一位是偷木头的人,当林业公安询问这4位是谁偷木头的。4个人回答如下:A说:不是我B说:是CC说:是DD说:C胡说其中,三个人说的是真话,一个说的是假话,现在要根据信息找出偷木头的人。

第1个回答  2013-12-23
三个真话,一个假话,C和D说的相对,肯定在C和D中。排除法可以知道是C在说假话追问

需要用C的程序编出来

第2个回答  2013-12-23
#include <stdio.h>
#include <stdlib.h>
#define Truth 0
#define Lie 1
void main()
{
    int a=1;
    int b=1;
    int c=1;
    int d=1;
    while(1)
    {
        if(a == Lie)
        {
            b =Truth;
            c =Truth;
            d =Truth;
        }
        if(b == Truth)
        {
            a = Truth;
            c = Lie;
        }
        if(c == Truth)
        {
            a = Truth;
            b = Lie;
            d = Lie;
        }
        if(d == Truth)
        {
            a= Truth;
            c = Lie;
        }
    if((a+b+c+d)==Lie)
    {
        printf("a:%d b:%d c:%d d:%d\n",a,b,c,d);
        if(a==1)
        {
            printf("A is the thief\n");
            break;
        }
        if(b==0)
        {
            printf("C is the thief\n");
            break;
        }
        if(c==0)
        {
            printf("D is the thief\n");
            break;
        }
        if(d==1)
        {
            printf("D is the thief\n");
            break;
        }
        printf("B is the thief\n");
        break;
        }
    }
}

本回答被提问者采纳

求脑筋急转弯
--答案:晕过去了 63、监狱里关着两名犯人,一天晚上犯人都逃跑了,可是第二天看守员打开牢门一看,里面还有一个犯人?--答案:逃跑的犯人名字叫“都” 64、小明的妈妈有三个儿子,大独生子叫大明,二儿子叫二明,三儿子叫什么?--答案:当然叫小明 65、猫见了老鼠为什么拔腿就跑?--答案:跑去捉老鼠 66、大象的左边...

相似回答