您的位置:首页 > 其它

第八周训练7谁是小偷

2016-10-25 17:32 176 查看
问题及代码
/*
烟台大学计算机学院 2016
作者: 马春澎
完成日期:2016年10月25日
问题描述:
警察局抓了a,b,c,d四名偷窃嫌疑犯,当中只有一个是小偷,审问结果如下:
a说:“我不是小偷。”
b说:“c是小偷。”
c说:“小偷肯定是d。”
d说:“c在冤枉人。”
现在已经知道4个人中3人说的是真话,一个说的是假话,那么谁是小偷?
*/
#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||a==0&&c==1&&d==0||c==1&&d==1&&d==0)
if(a+b+c+d==1)
{

if(a==1)
printf("a为小偷");
if(b==1)
printf("b为小偷");
if(c==1)
printf("c为小偷");
if (d==1)
printf("d为小偷");
}
return 0;
}

运行结果



知识点总结

用穷举法解决简单的逻辑思维推理题

学习心得

明白题目中的含义将真定义为1将假定义为0,进行计算求解
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: