C语言之基本算法12—谁是冠军
2017-04-25 09:51
225 查看
/*
==================================================================
题目:甲乙丙丁四人猜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\n",i);
}
}
/*
==================================================================
评:将四人的说法用逻辑语言表示,真为1。假为0,四人相加为几就有几个
是对的!你能够改动if语句里面的值为2或3试试(2人或3人说对)。
==================================================================
*/
==================================================================
题目:甲乙丙丁四人猜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\n",i);
}
}
/*
==================================================================
评:将四人的说法用逻辑语言表示,真为1。假为0,四人相加为几就有几个
是对的!你能够改动if语句里面的值为2或3试试(2人或3人说对)。
==================================================================
*/
相关文章推荐
- C语言之基本算法12—谁是冠军
- C语言 循环单链表各种基本运算的算法
- C语言笔试题(16)——二叉树基本算法
- C语言之基本算法08—去掉最高分去掉最低分求平均值
- C语言之基本算法13—兑换硬币
- c语言基本算法程序百例之九—杨辉三角形
- C语言之基本算法18—谁是小偷
- C语言之基本算法06—斐波那契数列求和
- C语言之基本算法05—韩信点兵
- C语言之基本算法15—前三位和后三位都是完全平方数的六位完全平方数
- C语言实现基本PSO算法
- C语言及程序设计初步例程-30 算法的基本概念
- C语言算法和三种基本程序结构
- C语言之基本算法07—分子分母数列前30项和
- C语言之基本算法02—水仙花数
- C语言 双链表各种基本运算的算法
- OpenCV 2 学习笔记(12): 算法的基本设计模式<3>:单例模式(Singleton pattern)
- 黑马程序员--C语言之基本语法、算法和进制
- C语言之基本算法10—最大公约数和最小公倍数
- C语言之基本算法16—条件全排列