第40讲项目8——谁是小偷

任务及代码

/*
*Copyright (c)2016,csdn学院
*All rights reserved.
*文件名称:lzz.c
*作    者:兰泽泽
*完成日期:2016年4月11日
*版 本 号:v1.0
*问题描述:警察局抓住了A、B、C、D四名盗窃嫌疑犯,其中只有一人是小偷。在审问时,A说:“我不是小偷”;
B说:“C是小偷”;C说:“小偷肯定是D”;D说:“C在冤枉好人”。现在已经知道这四人中有三人说的是真话,一人
说的是假话。请问到底谁是小偷?
提示:设4个变量a,b,c,d,为0时表示不是小偷,为1时表示是小偷,用四重循环穷举a,b,c,d可能的取值的组合,
对每一种组合判断其是否符合题目中给出的约束。最后结论:C是小偷。
*程序输入:
*程序输出:
*/
#include <stdio.h>
#include <stdlib.h>

int main()
{
    int a,b,c,d;
    for(a=0;a<=1;a++)
        for(b=0;b<=1;b++)
            for(c=0;c<=1;c++)
                for(d=0;d<=1;d++)
                   if((a==0)+(c==1)+(d==1)+(d==0)==3&&a+b+c+d==1)
                   {
                        printf("A: %d, B: %d, C: %d, D: %d\n", a, b, c, d);
                   }

    return 0;
}

运行结果

第40讲项目8——谁是小偷_第1张图片

你可能感兴趣的:(第40讲项目8——谁是小偷)