1A、B、C、D、E五名学生有可能参加计算机竞赛,根据下列条件判断哪些(10分)

题目内容:

 

A、B、C、D、E五名学生有可能参加计算机竞赛,根据下列条件判断哪些

人参加了竞赛:

(1)A参加时,B也参加;

(2)B和C只有一个人参加;

(3)C和D或者都参加,或者都不参加;

(4)D和E中至少有一个人参加;

(5)如果E参加,那么A和D也都参加。

输入格式:

输出格式:

大写字母表示参加的人,中间无空格。

比如最终结果是A和D参加了,则输出

AD

 编码:

#include<stdio.h>
int main(){
int A,B,C,D,E;
for (A=0; A<2; A++)
for(B=0; B<2; B++)
for(C=0; C<2; C++)
for(D=0; D<2; D++)
for(E=0; E<2; E++)
{
if(A && !B) continue;
if((B && C) || (!B && !C)) continue;
if(( C && !D) || (!C && D)) continue;
if (!D && !E) continue;
if (E && (!A || !D)) continue; if(A==1)
printf("A");
if(B==1)
printf("B");
if(C==1)
printf("C");
if(D==1)
printf("D");
if(E==1)
printf("E");
} return 0;
}
2、某地刑警大队对涉及6个嫌疑人的一桩疑案进行分析:(10分)

题目内容:

某地刑警大队对涉及6个嫌疑人的一桩疑案进行分析:
⑴ A、B至少有1人作案;
⑵ A、E、F ,3人中至少有2人参与作案;
⑶ A、D不可能是同案犯;
⑷ B、C或同时作案,或都与本案无关;
⑸ C、D中有且仅有一人作案;
⑹ 如果D没有参与作案,则E也不可能参与作案。
编程找出作案人。

输入格式:

输出格式:

大写字母表示参加的人,中间无空格。

比如最终结果是A和D参加了,则输出

AD

 编码:

#include<stdio.h>
int main()
{
int A, B, C, D, E, F ;//定义A到E六个变量,作案等于1,否则等于0
for(A = 0 ; A < 2 ; A ++)
for(B = 0 ; B < 2 ; B ++)
for(C = 0 ; C < 2 ; C++)
for(D = 0 ; D < 2 ; D++)
for(E = 0 ; E < 2 ; E++)
for(F = 0 ; F < 2 ; F++)
{
if(6 ==
( A || B ) //A、B 至少有一人作案
+( !(A && D) ) //A、D 不可能是同案犯
+( (A && E) || (A && F) || (E && F) ) //A、E、F 三人中至少有两人参与作案
+( (B && C) || (!B && !C) ) //B、C 或同时作案,或与本案无关
+( (C && !D) || (D && !C) ) //C、D 中有且仅有一人作案
+( D||(!E)) )//如果 D 没有参与作案,则 E 也不可能参与作案。
{ if(A==1)
printf("A");
if(B==1)
printf("B");
if(C==1)
printf("C");
if(D==1)
printf("D");
if(E==1)
printf("E");
if(F==1)
printf("F");
}
}
return 0 ;
}

  

  

  

C语言:逻辑推理的更多相关文章

  1. 数学语言和程序语言的对比:面向过程与面向集合&命题

    共同之处:都使用字符串或数值来引用一个客观实体.当然数字和字符串也可以作为实体对象,这取决于人的解释. 不同之处:数学语句每一行都给出了一个结论, 程序语句的每一行都定义了一个过程.注意这里所指的程序 ...

  2. 深入理解计算机系统(2.3)------布尔代数以及C语言运算符

    本篇博客我们主要讲解计算机中的布尔代数以及C语言的几个运算符. 1.布尔代数 我们知道二进制值是计算机编码.存储和操作信息的核心,随着计算机的发展,围绕数值0和1的研究已经演化出了丰富的数学知识体系. ...

  3. Atitit.编程语言的主要的种类and趋势 逻辑式语言..函数式语言...命令式语言

    Atitit.编程语言的主要的种类and趋势 逻辑式语言..函数式语言...命令式语言 1. 编程语言的主要的种类 逻辑式语言..函数式语言...命令式语言 1 2. 逻辑式语言,,不必考虑实现过程而 ...

  4. C语言编程思想

    模块化的思想 模块化程序的特点:单入口.单出口 基本的三种结构:顺序.分支(选择).循环: 这三个基本结构来安排模块执行的步骤: 循环三要素:初值.条件.更新: 面对编程问题:三步走策略(输入+处理+ ...

  5. 【学习笔记】PYTHON语言程序设计(北理工 嵩天)

    1 Python基本语法元素 1.1 程序设计基本方法 计算机发展历史上最重要的预测法则     摩尔定律:单位面积集成电路上可容纳晶体管数量约2年翻倍 cpu/gpu.内存.硬盘.电子产品价格等都遵 ...

  6. C语言黑与白问题

    问题描述: 有A.B.C.D.E这5个人,每个人额头上都帖了一张黑或白的纸.5人对坐,每 个人都可以看到其他人额头上纸的颜色.5人相互观察后: A说:“我看见有3人额头上贴的是白纸,1人额头上贴的是黑 ...

  7. 语言算子&模糊推理

    一.语言算子 语言算子分为三类: ①语气算子 ②模糊化算子 ③判定化算子 (1)语气算子 "集中化算子":--"很"."极"."非 ...

  8. C语言 · 高精度加法

    问题描述 输入两个整数a和b,输出这两个整数的和.a和b都不超过100位. 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储.对于这种问题,一般使用数组来处理. 定义一个数组A ...

  9. Windows server 2012 添加中文语言包(英文转为中文)(离线)

    Windows server 2012 添加中文语言包(英文转为中文)(离线) 相关资料: 公司环境:亚马孙aws虚拟机 英文版Windows2012 中文SQL Server2012安装包,需要安装 ...

随机推荐

  1. 【刷题】LOJ 2818 「eJOI2018」循环排序

    题目描述 本题译自 eJOI2018 Problem F「Cycle Sort」 给定一个长为 \(n\) 的数列 \(\{a_i\}\) ,你可以多次进行如下操作: 选定 \(k\) 个不同的下标 ...

  2. SpringBoot入坑指南之六:使用过滤器或拦截器

    在Web应用中,常常存在拦截全部或部分请求进行统一处理的应用场景,如权限校验.参数校验.性能监控等. 在SpringMVC框架中,我们可以通过过滤器或拦截器实现相关功能,spring-boot-sta ...

  3. sql server 小技巧 集锦

    sql server 小技巧(1) 导入csv数据到sql server sql server 小技巧(2) 删除sql server中重复的数据 sql server 小技巧(3) SQL Serv ...

  4. sql server 小技巧(5) Sql server 获取指定字符后的所有字符 - 去掉指定字符前的所有字符

    select top 10  SUBSTRING( sproductcode, CHARINDEX('-', SProductCode)+1, LEN(SProductCode)) from csmr ...

  5. 【CF675D】Tree Construction

    题目大意:给定一个有 N 个数组成的序列,在此基础上构建一棵二叉排序树,求每个节点(根节点除外)的父节点的编号是多少. 题解:首先,根据二叉排序树的不稳定性,直接模拟构建二叉排序树肯定会超时,因此需要 ...

  6. Python奇思妙想(胡思乱想)

    1.一道简单习题引发的思考深坑(通过globals及字典推导式获取类实例化了哪些对象) 初衷就是为了打印如下的信息: 小明,10岁,男,最爱大保健小明,10岁,男,开车去东北小明,10岁,男,最爱大保 ...

  7. ThinkPHP5项目目录

    ThinkPHP5安装后(或者下载后的压缩文件解压后)可以看到下面的目录结构: tp5├─application     应用目录 ├─extend          扩展类库目录(可定义) ├─pu ...

  8. 使用开源Breeze工具部署Kubernetes 1.12.1高可用集群

    Breeze项目是深圳睿云智合所开源的Kubernetes图形化部署工具,大大简化了Kubernetes部署的步骤,其最大亮点在于支持全离线环境的部署,且不需要FQ获取Google的相应资源包,尤其适 ...

  9. Sql语句里面调用变量

    sql语句里面调用变量的话有两种情况,一种是字符类型,一种是整型.浮点型之类的数字 db1.Execute("insert DataInformation values('" + ...

  10. Spring RedisTemplate操作-通道操作(10)

    @Autowired @Resource(name = "redisTemplate") private RedisTemplate<String, String> r ...