C语言之基本算法12—谁是冠军

/*
==================================================================
题目:甲乙丙丁四人猜A,B,C,D,E,F6个人谁是冠军,甲说不是A就是B,乙说
绝对不是C,丙说不可能是A和B,丁说是A或B,比赛结果说四人中仅仅有一个人
是说对的!
==================================================================
*/
#include<stdio.h>
main()
{
int jia,yi,bin,ding;
char i;
for(i='A';i<='F';i++)
{
jia=(i=='A'||i=='B');//事实上都是逻辑推断,真为1,假为0。从而实现可加性。最后加起来是几就有几人说对!
yi=(i!='C');
bin=(i!='A'&&i!='B');
ding=(i=='A'||i=='B');
if(jia+yi+bin+ding==1)
printf("冠军是:%c ",i);
}
}
/*
==================================================================
评:将四人的说法用逻辑语言表示,真为1。假为0,四人相加为几就有几个
是对的!

你能够改动if语句里面的值为2或3试试(2人或3人说对)。
==================================================================
*/

原文地址:https://www.cnblogs.com/jzssuanfa/p/6760410.html