简单编程求助
编程题:1.上级派来了新领导,司机去接待,站台上有4人,司机上去询问。A说是D,B说是A,C说不是我,D说A胡说。已知3个人说的是真话,一个人说的是假话。请根据这些信息,找出谁是新领导。
要程序额 别搞寡答案!
----------------解决方案--------------------------------------------------------
解题思路
这是逻辑题哦:
一、简化表示
A说是D可以表示为:D
B说是A可以表示为:A
C说不是我可以表示为:!C
D说A胡说(即说不是D)可以表示成:!D
二、推理
根据D与!D矛盾,知道他们中必定有人为假
绕开不管,则A和!C成立,所以为A
三、本人C语言才学,实现可以问下高手
----------------解决方案--------------------------------------------------------
#include <stdio.h>
void main()
{ char a='D',b='A',c='C',d='D'; //a代表是D,b代表是A,c代表是C,d代表是D
int i;
for(i=65;i<69;i++) //i=65是表示A的,依次推下去
{ //有三个条件符合就行
if(i==b&&i!=c&&i!=d) printf("%c",i);
if(i==a&&i!=c&&i!=d) printf("%c",i);
if(i==a&&i==b&&i!=d) printf("%c",i);
if(i==a&&i==b&&i!=c) printf("%c",i);
}
}
//本人也是初学C,程序很烂,希望以后可以一起探讨
----------------解决方案--------------------------------------------------------