C语言猜小偷思路,谁是小偷,求高手指教。怎么编写这个程序
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
老实说,我想了下,还是不知道该怎么做,在是我编的,在乙和丙这里总弄不对
#include "stdio.h"
int main(void)
{
int a[4];
a[0]=5;
a[1]=3;
a[2]=4;
a[3]=5;
//假设甲说的是 假话,那么甲是小偷
if(a[1]!=1||a[2]!=1||a[3]!=1)//如果其他三人有说甲不是小偷
{
printf("甲说的是真话话\n");
}
else if(a[1]!=5||a[2]!=5||a[3]!=5)//如果其他人而有说小偷是其他人
{
printf("甲说的是真话话\n");
}
else printf("甲说的是假话话\n");
//假设乙说的是假话,那么丙不是小偷
if(a[0]==3||a[2]==3||a[3]==3)//如果其他三人有说丙是小偷
{
printf("乙说的是真话话\n");
}
else if(a[0]!=5||a[2]!=5||a[3]!=5)
{
printf("乙说的是真话话\n");
}
else printf("乙说的是假话话\n");
//假设丙说的是假话,那么丁不是小偷
if(a[1]==4||a[0]==4||a[2]==4)//如果其他三人有说丁是小偷
{
printf("丙说的是真话话\n");
}
else if(a[0]!=5&&a[2]!=5&&a[1]!=5)
{
printf("丙说的是真话话\n");
}
else printf("丙说的是假话话\n");
//假设丁说的是假话,那么丁是小偷
if(a[1]==4||a[2]==4||a[0]==4)//
{
printf("丁说的是真话话\n");
}
else if(a[1]!=5||a[2]!=5||a[0]!=5)
{
printf("丁说的是真话话\n");
}
else printf("丁说的是假话话\n");
}