C语言:猜凶手

这篇具有很好参考价值的文章主要介绍了C语言:猜凶手。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

题目:

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

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

A说:不是我

B说:是C

C说:是D

D说:C在胡说

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

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

                    

 =========================================================================

                       

思路:

总体思路:

依次假设每个人是凶手进行判断

看4人说的话是不是 1假3真,是则证明假设的该人就是凶手

           

定义变量

char killer = 0; -- 凶手

            

因为 a b c d 的ASCII码值是连着的

所以有 a+1=b,以此类推,依次假定每个人是凶手判断情况

(使用 for循环 依次假定每个人是凶手

                 

4句话4个情况列出来

情况 1假3真真为 1假为 0

4种情况 “相加”==3

(使用 if条件判断语句 实现)

当前假定的人就是凶手,进行打印

                


                 

一步到位:

(1).

定义变量

char killer = 0; -- 凶手

            

(2).

因为 a b c d 的ASCII码值是连着的

所以有 a+1=b,以此类推,依次假定每个人是凶手判断情况

(使用 for循环 依次假定每个人是凶手

                 

(3).

4句话4个情况列出来

情况 1假3真真为 1假为 0

4种情况 “相加”==3

(使用 if条件判断语句 实现)

当前假定的人就是凶手,进行打印

                     

实现代码:

#include <stdio.h>
int main()
{
	//定义变量:
	char killer = 0; //凶手

	//依次假定每个人是凶手:
	for (killer = 'a'; killer <= 'd'; killer++)
	//因为 a b c d 的ASCII码值是连着的,所以a+1==b,
	//以此类推,依次假定每个人是凶手,判断情况

	{
		//把4个情况列出来:
		if ((killer != 'a') + (killer == 'c') + (killer == 'd') + (killer != 'd') == 3)
		//把4句话,4个情况列出来,情况1假3真,真为1,假为0,4种情况“相加”==3,符合就是凶手进行打印
		{
			//符合则进行打印
			printf("凶手是:%c\n", killer);
			break;
		}
	}


	return 0;
}

实现图片:

(注:for循环判断条件 killer <= 'd'

C语言:猜凶手,没事做道题:C语言,c语言,算法

                    

最终代码和实现效果

最终代码:

#include <stdio.h>
int main()
{
	//定义变量:
	char killer = 0; //凶手

	//依次假定每个人是凶手:
	for (killer = 'a'; killer <= 'd'; killer++)
	//因为 a b c d 的ASCII码值是连着的,所以a+1==b,
	//以此类推,依次假定每个人是凶手,判断情况

	{
		//把4个情况列出来:
		if ((killer != 'a') + (killer == 'c') + (killer == 'd') + (killer != 'd') == 3)
		//把4句话,4个情况列出来,情况1假3真,真为1,假为0,4种情况“相加”==3,符合就是凶手进行打印
		{
			//符合则进行打印
			printf("凶手是:%c\n", killer);
			break;
		}
	}


	return 0;
}

实现效果:

C语言:猜凶手,没事做道题:C语言,c语言,算法文章来源地址https://www.toymoban.com/news/detail-516009.html

到了这里,关于C语言:猜凶手的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 游戏开发中常用的算法1(20道题一篇文章)

    步骤1:选取一串数字中的中心轴 步骤2:将大于中心轴的数字放在右边 步骤3:将小于中心轴的数字放在左边 步骤4:分别对左右两个序列重复前三步操作 步骤一、从数组的最左侧两个元素进行比较 步骤二、将较大的数向右移动,再进行比较 步骤三、直到将最大的数字放在最

    2024年02月06日
    浏览(44)
  • ✔ ★ 算法基础笔记(Acwing)(三)—— 搜索与图论(17道题)【java版本】

    1. 排列数字(3分钟) 每次遍历dfs参数是 遍历的坑位 原题链接 2. n-皇后问题 原题链接 方法 1. 按行遍历(过程中有回溯、剪枝) 思想: 每次递归中,遍历一行的元素,如果可以放皇后,就递归到下一行,下一行中不行了,就返回来,回溯, 方法2. 按每个元素遍历(没有减枝)

    2024年02月05日
    浏览(48)
  • 各种闲着没事的 scanf 奇葩用法

    然而这些却很好用诶。 同理,scanf 可以拓展到 sscanf、fscanf~ 例题:P1580 yyy loves Easter_Egg I、P7911 网络连接 未计入更加奇葩的 C 语言用法,比如 %i %a 这种明显等价的转换字符。 十进制 32 位整数: %d 十进制 32 位无符号整数: %u 十进制 64 位整数: %lld 十进制 64 位无符号整数:

    2024年02月07日
    浏览(43)
  • 【智力悬疑题】——【“找凶手”解法】

    某地发生了一起凶杀案,警察通过排查确定杀人凶手必为4个嫌疑犯中的一个。以下为4个嫌疑犯的供词: A说:不是我。 B说:是C。 C说:是D。 D说:C在胡说。 已知3个人说了真话,1个人说了假话。请编程来确定谁是凶手。 我们已知的信息: 1、A、B、C、D中一定有1个人是凶手

    2024年02月13日
    浏览(26)
  • 谁是 “凶手” !

    近日,日本米花町发生了一起凶杀案,警察通过排查确定杀人凶手必为4个嫌疑犯中的一个。 以下为4个嫌疑犯的供词: A说:不是我。 B说:是C。 C说:是D。 D说:C在胡说。 已知3个人说了真话,1个人说了假话。请编程来确定谁是凶手。 已知线索: A、B、C、D四人中有三人说

    2024年02月12日
    浏览(28)
  • 找凶手,定名次,字符串旋转,杨氏矩阵

    1.找凶手问题: //题目名称: //猜凶手 //题目内容: //日本某地发生了一件谋杀案,警察通过排查确定凶手必为4个嫌疑犯的一个。 //以下为4个嫌疑犯的供词: //A说:不是我 //B说:是C //C说:是D //D说:C在胡说 //已知3个人说的是真话,1个人说的是假话。 //请根据这些信息,写

    2023年04月23日
    浏览(34)
  • 倒置字符串、猜名次、猜凶手、杨辉三角

    目录   例一:倒置字符串 例二:猜名次 例三:猜凶手 例四:杨辉三角 方法一  方法二    首先我们先来看一下题目具体要求 再来看一下我们所需要的效果  这里呢,博主给出两种思路,一种是先将整个字符串逆序,再将单个单词逆序;另一种是先将单个单词厉旭,再将整

    2024年02月06日
    浏览(41)
  • 【吃饱没事干Python】列表中空值nan的苦恼(已解决)

    目录 空值nan初步了解 方法一: 将其变换为None来处理 方法二:使用np.nan_to_num方法使nan值将替换为 0.0(可指定) 方法三:使用数组转换nan被识别为字符串\\\"nan\\\", 可当做字符串进行相应处理,这个最简便 方法四:直接删除nan,利用其np.nan == np.nan值为False的性质 python做数据处理时

    2023年04月09日
    浏览(39)
  • vue3项目部署到服务器,刚打开没事,一刷新页面就404

    vue3项目部署到服务器,刚打开没事,一刷新页面就404 不知道什么原因。百度了下才发现问题所在 问题所在: vue-router历史模式的问题: vue3中历史模式,默认改为了HTML5模式: createWebHistory() 解决办法: createWebHistory 换成 createWebHashHistory ,将历史模式,由当前的HTML5模式,改

    2024年01月18日
    浏览(55)
  • 你以为你守规矩就没事了吗?你还是太年轻了,老程序员告诉你实情

    大家好! 今天我们不讲这个技术了 我们来讲一些程序员的职场问题 在这里我先给大家提一个问题 不守规矩的程序员 他到底过得舒不舒服 大家可以把心里想的答案 写在这个公屏上面 我这里呢先给大家说一个案例 大家就知道这个答案了 这里有两个同事 一个叫小明一个叫小强

    2023年04月21日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包