C语言之猜凶手

一、题目

日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个嫌疑犯的一个。

以下为4个嫌疑犯的供词:

  • A说:不是我。
  • B说:是C。
  • C说:是D。
  • D说:C在胡说

已知3个人说了真话,1个人说的是假话。

现在请根据这些信息,写一个程序来确定到底谁是凶手

二、解题代码

#include <stdio.h>int main()
{char killer;for(killer='A'; killer<='D'; killer++)//巧妙地利用ASCII 从A-D进行循环和比较{//下面分别对应每个人都供词  不是A 是C     是D    不是Dif (((killer!='A') + (killer=='C') + (killer=='D') + (killer!='D'))==3)  //这里等于3表示 有三个人说了真话{printf("%c是凶手\n",killer);break;}}return 0;
}

三、解题思路

  1. 定义一个字符变量 killer,用于表示可能的凶手。
  2. 使用 for 循环从字符 'A' 开始,逐个遍历到字符 'D'。
  3. 在每次循环中,根据不同的 killer 值进行条件判断。
  4. 条件判断表达式 ((killer!='A') + (killer=='C') + (killer=='D') + (killer!='D')) 是一个求和表达式,用于判断有多少个人说了真话。
  5. 'A'=1010,   'B'=1011,   'C'=1100,   'D'=1101
  • (killer!='A') 表示如果 killer 不等于字符 'A',则为真(1),否则为假(0)。
  • (killer=='C') 表示如果 killer 等于字符 'C',则为真(1),否则为假(0)。
  • (killer=='D') 表示如果 killer 等于字符 'D',则为真(1),否则为假(0)。
  • (killer!='D') 表示如果 killer 不等于字符 'D',则为真(1),否则为假(0)。
  1. 如果求和表达式的结果等于3,表示有三个人说了真话。
  2. 在满足条件的情况下,使用 printf 函数打印出 killer 的值,并通过 break 语句跳出循环。
  3. 程序执行完毕,返回0表示成功结束。

由于字符在内存中以ASCII码的形式存储,因此可以利用字符的ASCII码值进行比较。在这段代码中,通过遍历字符 'A' 到 'D',每次将 killer 设置为一个字符,并根据条件判断表达式来确定凶手的身份。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/653963.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

产品解读 | 新一代湖仓集存储,多模型统一架构,高效挖掘数据价值

星环科技TDH一直致力于给用户带来高性能、高可靠的一站式大数据基础平台&#xff0c;满足对海量数据的存储和复杂业务的处理需求。 同时在易用性方面持续深耕&#xff0c;降低用户开发和运维成本&#xff0c;让数据处理平民化&#xff0c;助力用户以更便捷、高效的方式去挖掘数…

Python tkinter (9) ——Menu控件

本文主要是Python tkinter Menu菜单控件介绍及使用示例。 tkinter系列文章 python tkinter窗口简单实现 Python tkinter (1) —— Label标签 Python tkinter (2) —— Button标签 Python tkinter (3) —— Entry标签 Python tkinter (4) —— Text控件 Python tkinter (5…

计算机毕业设计 基于SpringBoot的校园闲置物品交易系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…

springboot(ssm医院疫情防控系统 疫苗核酸预约系统Java系统

springboot(ssm医院疫情防控系统 疫苗核酸预约系统Java系统 开发语言&#xff1a;Java 框架&#xff1a;springboot&#xff08;可改ssm&#xff09; vue JDK版本&#xff1a;JDK1.8&#xff08;或11&#xff09; 服务器&#xff1a;tomcat 数据库&#xff1a;mysql 5.7&a…

多场景建模:腾讯3MN

3MN: Three Meta Networks for Multi-Scenario and Multi-Task Learning in Online Advertising Recommender Systems 背景 推荐领域的多场景多任务学习&#xff1a;维护单模型即可节省资源也可节省人力&#xff1b;各个场景的数据共享&#xff0c;理论上面学习是更加充分的 …

微信小程序Skyline在手机端不渲染的问题之一及其解决方式

问题&#xff1a;电脑端是skyline渲染&#xff0c;手机端是webview渲染?如何解? 开发者工具 当前渲染模式&#xff1a;Skyline 当进行预览时手机端却是: 请注意看轮播图的显示情况 请注意看轮播图的显示情况 请注意看轮播图的显示情况 从轮播图上来看,手机端是webview渲染…

“有国才有家”这个观点应该怎么理解?

​《有国才有家》这首歌由马仕健作词作曲&#xff0c;蒋国佳编曲&#xff0c;刘畅混音&#xff0c;马仕健演唱。 “家是最小国&#xff0c;国是千万家”。千百年来&#xff0c;“家国”这两个词一直紧紧联系在一起。“国家好&#xff0c;民族好&#xff0c;大家才会好”&#x…

【嵌入式学习】C++QT-Day3-C++基础

笔记 见我的博客&#xff1a;https://lingjun.life/wiki/EmbeddedNote/19Cpp 作业 设计一个Per类&#xff0c;类中包含私有成员:姓名、年龄、指针成员身高、体重&#xff0c;再设计一个Stu类&#xff0c;类中包含私有成员:成绩、Per类对象p1&#xff0c;设计这两个类的构造函…

Linux文件管理(下)

上上篇介绍了Linux文件管理的上部分内容&#xff0c;这次继续将 Linux文件管理的剩余部分说完。内容如下。 一、查看文件内容 1、cat 命令 1.1 输出文件内容 基本语法&#xff1a; cat 文件名称主要功能&#xff1a;正序输出文件的内容。 eg&#xff1a;输出 readme.txt文…

力扣0112——路径总和

路径总和 难度&#xff1a;简单 题目描述 给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径&#xff0c;这条路径上所有节点值相加等于目标和 targetSum 。如果存在&#xff0c;返回 true &#xff1b;否则&#xf…

对Spring当中AOP的理解

AOP(面向切面编程)全称Aspect Oriented Programminge AOP就是把系统中重复的代码抽取出来&#xff0c;单独开发&#xff0c;在系统需要时&#xff0c;使用动态代理技术&#xff0c;在不修改源码的基础上&#xff0c;将单独开发的功能通知织入(应用)到系统中的过程&#xff0c;完…

git从clone到pr的全流程

在使用 Git 和 GitHub 进行协作时&#xff0c;从克隆&#xff08;clone&#xff09;一个仓库到创建拉取请求&#xff08;Pull Request&#xff0c;简称 PR&#xff09;的全流程通常包括以下步骤&#xff1a; 1. 克隆远程仓库 首先&#xff0c;你需要将远程仓库克隆到你的本地…

chatgpt搭建

chatgpt两步搭建大法 部署docker环境 下载docker curl -fsSL https://get.docker.com -o get-docker.sh安装docker sh get-docker.sh运行docker服务 systemctl start docker查看运行状态 systemctl status docker设置docker开机自启 systemctl enable docker部署chatgpt…

慎投!这3本期刊诚信风险高,被警告和风险低的期刊选哪个?

近年来&#xff0c;学术界对学术诚信的关注越来越多&#xff0c;期刊的学术诚信风险也日益受到关注。科睿唯安在今年三月份剔除的35本SCI期刊中&#xff0c;绝大多数涉及学术诚信问题&#xff01;据官方介绍&#xff0c;其已正式开发了一款AI工具&#xff0c;可以锁定存在学术诚…

【JavaScript 基础入门】01 编程语言和计算机基础

编程语言和计算机基础 目录 编程语言和计算机基础1 - 编程语言1.1 编程1.2 计算机语言1.3 编程语言1.4 翻译器1.5 编程语言和标记语言区别1.6 总结 2 - 计算机基础2.1 计算机组成2.2 数据存储2.3 数据存储单位2.4 程序运行 1 - 编程语言 1.1 编程 编程&#xff1a; 就是让计算…

微信小程序(二十二)获取全局实例

注释很详细&#xff0c;直接上代码 上一篇 新增内容&#xff1a; 1.全局实例的定义位置 2.全局实例中数据的修改方法 源码&#xff1a; app.js App({//数据可以包括在第二级globalData:{userInfo:null,token:1243,userInfo:null},//globalData并不是关键词&#xff0c;数据可以…

预制菜春节大洗牌,味知香、千味央厨谁是“硬菜”?

2024年春节预制菜销量走俏&#xff0c;预制菜依然是消费者“年夜饭”上的重头戏。各大生鲜平台、电商、商超、餐饮门店都纷纷开卖春节预制菜。 预制菜赛道两大“玩家”&#xff1a;“预制菜第一股”味知香(605089.SH&#xff09;、“餐饮供应链第一股”千味央厨(001215.SZ)均在…

jrt运维命令改造

以前发布网站都是定死网站放置路径的&#xff0c;现在JRT想面向更广范围推广&#xff0c;所以就不能明确确定网站放置目录&#xff0c;为此需要改造一下jrt命令和sh来满足目录不确定情况和多个程序用不同管理命令的要求。 以前是写死的&#xff0c;现在改为调程序运行目录的sh…

在Mixamo网站上,下载的模型导入unity后没有材质怎么解决

在Mixamo网站上&#xff0c;下载的模型导入unity后没有材质 1.导入的模型没有材质2.解决方法3.提取后就有材质了 1.导入的模型没有材质 2.解决方法 选中导入的模型 > 选择提取纹理>选择你要提取到的文件夹(默认是当前文件夹)>点击 fix now 3.提取后就有材质了

【漏洞复现】中移铁通禹路由器弱口令漏洞

Nx01 产品简介 中移禹路由器支持宽带拨号、动态IP和静态IP三种上网模式,一般中国移动宽带的光猫都是智能光猫也就是光猫带路由器功能,中移禹路由器作为二级路由使用。 Nx02 漏洞描述 中移禹路由器存在默认口令(admin)&#xff0c;攻击者可利用该漏洞获取敏感信息。 Nx03 产品…