C语言每日一练
2021年12月11日

文章目录

  • 题目描述
  • 问题分析
  • 代码实现
  • 运行结果

题目描述

某项任务需要在A、B、C、D、E、F这6个人中挑选人来完成,但挑选人受限于以下的条件:
(1) A和B两个人至少去一人;
(2) A和D不能同时去;
(3) A、E和F三人中要挑选两个人去;
(4) B和C同时去或者都不去;
(5) C和D两人中只能去一个;
(6) 如果D不去,那么E也不去。

试编程求出应该让哪几个人去完成这项任务。

问题分析

这种简单题适合用遍历法,遍历所有的委派组合,定义 a-e 6个整型变量,值为1表示被委派,0表示没有被委派。

将题目的条件翻译成条件语句
(1) a + b >= 1
(2) a + d < 2
(3) a + e + f == 2
(4) (b + c == 2) || ( b + c ) == 0
(5) c + d == 1
(6) (d + e == 0) || d

如果遍历的组合同时满足上面所有的条件,则视为题目结果。

代码实现

#include <stdio.h>int main()
{int a, b, c, d, e, f;for(a = 0; a <= 1; a++)for(b = 0; b <= 1; b++)for(c = 0; c <= 1; c++)for(d = 0; d <= 1; d++)for(e = 0; e <= 1; e++)for(f = 0; f <= 1; f++)if((a + b >= 1) &&\(a + d < 2) &&\(a + e + f == 2) &&\((b + c == 2) || (b + c == 0))&\(c + d == 1) &&\((d + e == 0) || d)){printf("需要委派 ");if(a)printf("A ");if(b)printf("B ");if(c)printf("C ");if(d)printf("D ");if(e)printf("E ");if(f)printf("F ");printf("去完成任务\n");}return 0;
}

运行结果

C语言每日一练——第66天:委派任务问题相关推荐

  1. 6 获取数组中最小值_C语言每日一练8——数组中最大值和最小值

    题目: 利用指针函数,求某数组中的最大值和最小值. 实现代码: /* ================================================================= ...

  2. C语言每日一练——第85天:三色球问题

    C语言每日一练 2022年3月8日 文章目录 题目描述 问题分析 代码实现 运行结果 网上参考 题目描述 一个口袋中放有12个球,已知其中3个是红的,3个是白的,6个是黑的,现从中任取8个,问共有多少 ...

  3. C语言每日一练——第73天:谁是窃贼问题

    C语言每日一练 202年1月8日 文章目录 题目描述 问题分析 代码实现 运行结果 网上参考 题目描述 警察审问4名窃贼嫌疑犯.现在已知,这4人当中仅有一名是窃贼,还知道这4个人中的每个人要么是诚实的 ...

  4. C语言每日一练——第35天:打印菱形

    C语言每日一练 2021年10月13日 题目描述 输入菱形的高度n(必须为奇数),即正中间星号的个数,打印出用星号组成的菱形 分析 要打印菱形,先要构想要打印的图形样子,就比如下图这种: 我们可以根据 ...

  5. C语言每日一练——第28天:要求输出国际象棋棋盘

    C语言每日一练 2021年10月6日 题目描述 要求输出国际象棋棋盘 分析 先看看国际象棋的棋盘的长相: 可以看出,国际象棋棋盘呈正方形,里面包含8x8总共64个小方格,它们黑白相间.要想在控制台输出 ...

  6. C语言每日一练——第10天:求一个矩阵主对角线及副对角线元素之和

    C语言每日一练 2021年9月18日 题目描述 求一个矩阵主对角线及副对角线元素之和 分析 在数学中,矩阵(Matrix)是一个按照长方阵列排列的复数或实数集合,矩阵是高等代数学中的常见工具,也常见于 ...

  7. C语言每日一练——第1天:字母大小写转换

    C语言每日一练 2021年9月9日 本人C语言菜鸟,最近工作中频频出现C语言小错误,遂决定使用笨方法提高我的C语言水平,坚持每天一个C语言小练习,养成C语言手感,从此让编程成为习惯. 题目描述 从键盘 ...

  8. 【C语言每日一练——第1练:字母大小写转换】

    C语言每日一练 2022年6月13日 题目描述 从键盘输入一个大写字母,要求改用小写字母输出 分析 从键盘输入可以使用scanf或getchar等函数. 大写字母是一个字符,字符类型数据在C语言中是以 ...

  9. C语言每日一练——第80天:换分币问题

    C语言每日一练 2022年2月13日 文章目录 题目描述 问题分析 代码实现 运行结果 题目描述 将5元的人民币兑换成1元.5角和1角的硬币,共有多少种不同的兑换方法. 问题分析 列举3元1次方程 1 ...

  10. C语言每日一练——第64天:自动发牌程序

    C语言每日一练 2021年12月7日 文章目录 题目描述 问题分析 代码实现 运行结果 网上参考 题目描述 一副扑克有52张牌,打桥牌时应将牌分给4个人.请设计一个程序完成自动发牌的工作.要求:黑桃用 ...

最新文章

  1. oracle强大的包,ORACLE 程序包
  2. 人机接口要学哪些计算机语言,智能人机接口
  3. unity中链接字符串和变量显示_理解Unity中的优化(六):字符串和文本
  4. 北大出版社继续送书 | 附上周4位中奖的朋友信息
  5. MySQL—ERROR 2002 (HY000): '/var/lib/mysql/mysql.sock'解决记录
  6. Android 获取地理位置信息 封装好了 直接用
  7. 199 美元的 iPhone 都可以想了,时代真的变了?
  8. 程序员用C/C++打造车牌识别系统!同学眼中只有膜拜!
  9. html菜鸟教程选项卡,jQuery EasyUI 布局插件 – Tabs 标签页/选项卡 | 菜鸟教程
  10. bme280(HAL库)
  11. uniapp-页面内/页面间数据的流动传递-this-that
  12. 使用java自动下载网易云音乐
  13. 单片机常用芯片系列(二)——DS18B20详解
  14. java.sql.SQLException: sql injection violation, multi-statement not allow
  15. 数据库拆分:横向拆分和纵向拆分
  16. java.sql.timestamp_java.sql.Date和java.sql.Timestamp转换
  17. YYModel之字典/Json转模型
  18. Virtualbox centos虚拟机网络互联总结
  19. 微信小程序详解wx:if elif else的用法(搭配view、block)
  20. 【无标题】神马TV(前端apk文件_后端苹果cms v10)

热门文章

  1. HDU 1374 求三角形外接圆的半径
  2. 怎么打开服务器的xls文件,xls是什么文件格式?.xls文件打开方法
  3. php远程控制代码,内部网络机器的远程控制软件UltraVNC及其源代码
  4. 进行一个幂的运算(数学)
  5. python中sinxcosy_∫e^x[(1-cosy)dx-(y-siny)dy],其中c为区域 0≤x≤π,0≤y≤sinx的边界曲线取正向.求曲...
  6. 2022年国家法定节假日放假时间安排
  7. java数组计算奇数的和,JAVA从键盘中输入20个整数将奇数和偶数存入不同的两个数组中 计算这两个数组中所有数据之和...
  8. 串口通信那些事儿:通信电平转换电路
  9. BioBERT: a pre-trained biomedical language representation model for biomedical text mining
  10. 新疆旅游攻略-乌鲁木齐