当前位置: 首页 > news >正文

C语言 for 循环:解谜数学,玩转生活!

放在最前面的

🎈 🎈 我的CSDN主页:OTWOL的主页,欢迎!!!👋🏼👋🏼
🎉🎉我的C语言初阶合集:C语言初阶合集,希望能帮到你!!!😍 😍
👋🏼🎉🎊创作不易,欢迎大家留言、点赞加收藏!!! 🥳😁😍


文章目录

  • 放在最前面的
  • 前言
  • 一、猜凶手
    • 题目描述:
    • 解题思路:
    • 代码如下(示例):
    • 输出结果(示例):
  • 二、杨辉三角
    • 题目描述:
    • 解题思路:
    • 代码如下(示例):
    • 输出结果(示例):
  • 三、猜名次
    • 题目描述:
    • 解题思路:
    • 代码如下(示例):
    • 输出结果(示例):
  • END:总结


前言

本篇博客是通过三道题目来让你真正了解和学会
使用 for循环是如何解决生活实际问题和数学问题的!


一、猜凶手

题目描述:

日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个嫌疑犯的一个。
以下为4个嫌疑犯的供词:
A说:不是我。
B说:是C。
C说:是D。
D说:C在胡说
已知3个人说了真话,1个人说的是假话。
现在请根据这些信息,写一个程序来确定到底谁是凶手。

解题思路:

通过对题目的阅读后,我们知道杀人凶手 就在 A B C D这四个人之间的某一个;
所以:
(1)首先我们可以通过 一 一 列举的办法,假设杀人凶手 是A、 B 、C或者 D;
(2)然后进行判断是否满足题目说的他们的供词的 “3个人说了真话,1个人说的是假话”的条件;
(3) 从而 推理得到 真正的杀人凶手 。

代码如下(示例):

#include<stdio.h>int main()
{//定义一个字符型变量 killer,用于存放凶手char killer = 'A';//循环生成 'A','B','C','D';for (killer = 'A'; killer <= 'D'; killer++){//判断是否满足题目的条件if ( ( (killer != 'A') + (killer == 'C')+ (killer == 'D') + (killer != 'D') ) == 3 ){//输出printf("killer = %c\n", killer);}}return 0;
}

输出结果(示例):

二、杨辉三角

题目描述:

在屏幕上打印杨辉三角。
1
1 1
1 2 1
1 3 3 1
……

解题思路:

通过对题目的阅读后,
我们可以通过一个二维数组的形式进行打印杨辉三角;
可以用 r 表示 行,c 表示 列
通过观察知道:
(1)第一列的元素都是 1,并且当 r (行)== c(列) 的时候,元素也是 1 ;
(2)其他位置上的元素是 由该位置 上面位置的元素 + 左上角的元素的和。

代码如下(示例):

#include<stdio.h>int main()
{//定义一个二维数组int arr[10][10] = { 0 };//定义一个整型变量 n ,用于要输入的数字int n = 0;//输入scanf("%d", &n);//定义一个整型变量 r,用于要循环控制的 行数int r = 0;//定义一个整型变量 c,用于要循环控制的 列数int c = 0;//外循环,控制 行数for (r = 0; r < n; r++){//内循环,控制 列数for (c = 0; c <= r; c++){//判断 第一列的元素 和  行 == 列if ((c == r) || (c == 0)){//赋值arr[r][c] = 1;}//判断(除去 第一列的元素和行 == 列)其他位置上的元素if ((r >= 2) && (c < r)){//赋值arr[r][c] = arr[r - 1][c] + arr[r - 1][c - 1];}}}外循环,控制 行数for (r = 0; r < n; r++){//内循环,控制 列数for (c = 0; c <= r ; c++){//输出printf("%5d ", arr[r][c]);}//每输出一行,进行换行printf("\n");}return 0;
}

输出结果(示例):

三、猜名次

题目描述:

5 位运动员参加了10米台跳水比赛,有人让他们预测比赛结果:
A选手说:B第二,我第三;
B选手说:我第二,E第四;
C选手说:我第一,D第二;
D选手说:C最后,我第三;
E选手说:我第四,A第一;
比赛结束后,每位选手都说对了一半,请编程确定比赛的名次。

解题思路:

通过对题目的阅读后,我们知道 每个人的名次可能是 1 ~ 5 的一个。
所以:
(1)首先我们可以通过 一 一 列举的办法,将每个人的 名次 列出来;
(2)然后进行判断是否满足题目说的 “每位选手都说对了一半”的条件;
(3) 最后还要加上每个人只能有一个名次,即(a * b * c * d * e) == 120
(4) 从而 得到每个人比赛最终的名次 。

代码如下(示例):

#include<stdio.h>int main()
{//定义五个整型变量,用于存放 5个运动员的名次int a = 0;int b = 0;int c = 0;int d = 0;int e = 0;//把 a b c d e 五个人可能出现的每次进行 一 一列举出来for (int a = 1; a <= 5; a++){ for (int b = 1; b <= 5; b++){for (int c = 1; c <= 5; c++){for (int d = 1; d <= 5; d++){for (int e = 1; e <= 5; e++){//判断是否满足下面的判断条件if ( ((b == 2) + (a == 3) == 1)&&((b == 2) + (e == 4) == 1)&&((c == 1) + (d == 2) == 1)&&((c == 5) + (d == 3) == 1)&&((a == 1) + (e == 4) == 1)&&((a * b * c * d * e) == 120)){//输出名次printf("a = %d\n", a);printf("b = %d\n", b);printf("c = %d\n", c);printf("d = %d\n", d);printf("e = %d\n", e);}}}}}}return 0;
}

输出结果(示例):


END:总结

每天都在学习的路上!
On The Way Of Learning

以上就是今天要讲的内容,本文简单介绍了用for循环解决生活实际问题(猜凶手、猜名次)和数学问题(杨辉三角);

或我的小思路还有成长的空间哦!🔍 诚挚邀请各位编程大侠,一起来晒出你们那闪耀着智慧光芒的优质代码吧!✨
你的精彩分享,将是我们共同进步的最强动力!💪

相关文章:

C语言 for 循环:解谜数学,玩转生活!

放在最前面的 &#x1f388; &#x1f388; 我的CSDN主页:OTWOL的主页&#xff0c;欢迎&#xff01;&#xff01;&#xff01;&#x1f44b;&#x1f3fc;&#x1f44b;&#x1f3fc; &#x1f389;&#x1f389;我的C语言初阶合集&#xff1a;C语言初阶合集&#xff0c;希望能…...

Node.js 与 JavaScript 是什么关系

JavaScript 是一种编程语言&#xff0c;而 Node.js 是 JavaScript 的一个运行环境&#xff0c;它们在不同的环境中使用&#xff0c;具有一些共同的语言基础&#xff0c;但也有各自独特的 API 和模块&#xff0c;共同推动着 JavaScript 在前后端开发中的广泛应用。 一、基础语言…...

Java 大视界 -- Java 大数据性能监控与调优:全链路性能分析与优化(十五)

&#x1f496;&#x1f496;&#x1f496;亲爱的朋友们&#xff0c;热烈欢迎你们来到 青云交的博客&#xff01;能与你们在此邂逅&#xff0c;我满心欢喜&#xff0c;深感无比荣幸。在这个瞬息万变的时代&#xff0c;我们每个人都在苦苦追寻一处能让心灵安然栖息的港湾。而 我的…...

深入Spring Boot:自定义Starter开发与实践

引言 Spring Boot通过其强大的自动配置机制和丰富的Starter模块&#xff0c;极大地简化了Spring应用的开发过程。Starter模块封装了一组相关的依赖和配置&#xff0c;使得开发者可以通过简单的依赖引入&#xff0c;快速启用特定的功能。然而&#xff0c;除了使用Spring Boot提…...

React 中hooks之useTransition使用总结

目录 概述基本用法使用场景最佳实践注意事项 概述 什么是 useTransition? useTransition 是 React 18 引入的新 Hook&#xff0c;用于标记非紧急的状态更新。它允许组件在状态转换期间保持响应&#xff0c;通过将某些更新标记为"过渡"来推迟它们的渲染。 主要特…...

怎样使用树莓派自己搭建一套ADS-B信号接收系统

0 我们知道&#xff0c;ADS-B全称广播式自动相关监视系统&#xff0c;其实就是飞机发出的广播信号&#xff0c;用明码来对外发送自己的位置、高度、速度、航向等信息&#xff0c;是公开信息。连续接收到一架飞机发出的ADS-B信息后&#xff0c;可以通过其坐标点来描绘出飞机的航…...

Chrome谷歌浏览器如何能恢复到之前的旧版本

升级了谷歌最新版不习惯&#xff0c;如何降级版本 未完待续。。 电脑中的Chrome谷歌浏览器升级到了最新版本&#xff0c;但是有种种的不适应&#xff0c;如何能恢复到之前的旧版本呢&#xff1f;我们来看看操作步骤&#xff0c;而且无需卸载重装。 怎么恢复Chrome 之前版本&a…...

路由器旁挂三层网络实现SDWAN互联(爱快SD-WAN)

近期因公司新办公区建设&#xff0c;原有的爱快路由器的SDWAN功能实现分支之间互联的服务还需要继续使用。在原有的小型网络中&#xff0c;使用的爱快路由器当作网关设备&#xff0c;所以使用较为简单,如下图所示。 现变更网络拓扑为三层网络架构&#xff0c;但原有的SDWAN分支…...

代码随想录算法训练营第五十五天 |108.冗余连接 109.冗余连接Ⅱ

108.冗余连接&#xff1a; 文章链接 题目链接&#xff1a;108.冗余连接 思路 首先分析题目&#xff0c;给定拥有n个节点和n条边的图&#xff0c;其中图是在原n个节点和n - 1条无环无向图中添加一条边得到的。要求是输出多出的边。&#xff08;PS&#xff1a;可能会有多个答案…...

Unity补充 -- 协程相关

1.协程。 协程并不是线程。线程是主线程之外的另一条 代码按照逻辑执行通道。协程则是在代码在按照逻辑执行的同时&#xff0c;是否需要执行额外的语句块。 2.协程的作用。 在update执行的时候&#xff0c;是按照帧来进行刷新的&#xff0c;也是按照帧执行代码的。但是又不想…...

【第二十周】U-Net:用于生物图像分割的卷积神经网络

文章目录 摘要Abstract文章信息研究动机U-Net网络结构U-Net网络搭建数据增强损失函数转置卷积创新性与不足创新性&#xff1a;不足&#xff1a; 总结 摘要 U-Net&#xff08;Convolutional Networks for Biomedical Image Segmentation&#xff09;是一种用于图像分割的深度学…...

部署Metricbeat监测ES

官方参考文档 安装Metricbeat curl -L -O https://artifacts.elastic.co/downloads/beats/metricbeat/metricbeat-7.17.27-linux-x86_64.tar.gztar xzvf metricbeat-7.17.27-linux-x86_64.tar.gz设置 Metricbeat连接到 Elasticsearch 进入metricbeat目录配置metricbeat.yml …...

Pytorch|YOLO

&#x1f368; 本文为&#x1f517;365天深度学习训练营中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 一、 前期准备 1. 设置GPU 如果设备上支持GPU就使用GPU,否则使用CPU import torch import torch.nn as nn import torchvision.transforms as transforms im…...

云计算与物联网技术的融合应用(在工业、农业、家居、医疗、环境、城市等整理较全)

摘要 为生产领域带来更加全面和深入的变革。通过云计算平台对物联网数据进行处理和分析&#xff0c;企业可以实现对生产过程的更加精细化的管理和控制。 1. 智能生产调度 通过云计算和物联网技术的融合应用&#xff0c;企业可以实现对生产线上各个环节的实时监控和数据分析。…...

基于python+Django+mysql鲜花水果销售商城网站系统设计与实现

博主介绍&#xff1a;黄菊华老师《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者&#xff0c;CSDN博客专家&#xff0c;在线教育专家&#xff0c;CSDN钻石讲师&#xff1b;专注大学生毕业设计教育、辅导。 所有项目都配有从入门到精通的基础知识视频课程&#xff…...

Golang:报错no required module provides package github.com/xx的解决方法

报错 问题重现可能的原因及解决方法1. 未初始化 Go 模块解决方法&#xff1a; 2. 没有添加依赖解决方法&#xff1a; 3. 网络问题解决方法&#xff1a; 4. 依赖版本问题解决方法&#xff1a; 5. 包未发布或路径拼写错误解决方法&#xff1a; 6. go mod tidy 未运行解决方法&…...

数据结构与算法(2):顺序表与链表

1.前言 哈喽大家好喔&#xff0c;今天博主继续进行数据结构的分享与学习&#xff0c;今天的主要内容是顺序表与链表&#xff0c;是最简单但又相当重要的数据结构&#xff0c;为以后的学习有重要的铺垫&#xff0c;希望大家一起交流学习&#xff0c;互相进步&#xff0c;让我们…...

华为OD机试E卷 --过滤组合字符串--24年OD统一考试(Java JS Python C C++)

文章目录 题目描述输入描述输出描述用例题目解析JS算法源码Java算法源码python算法源码c算法源码c++算法源码题目描述 数字 0、1、2、3、4、5、6、7、8、9 分别关联 a~z 26 个英文字母。 0 关联“a”"b”"c1 关联“d”"e”"f2 关联“g"“h”“i”3 关…...

QT跨平台应用程序开发框架(3)—— 信号和槽

目录 一&#xff0c;基本概念 二&#xff0c;connect函数使用 2.1 connect 2.2 Qt内置信号和槽 2.3 一些细节 三&#xff0c;自定义信号和槽 3.1 自定义槽函数 3.2 自定义信号 3.3 带参数的信号槽 四&#xff0c;信号和槽的意义 五&#xff0c;信号和槽断开连接 六&…...

从 0 开始实现一个 SpringBoot + Vue 项目

从 0 开始实现一个 SpringBoot Vue 项目 从 0 开始实现一个 SpringBoot Vue 项目 软件和工具创建 SpringBoot 后端项目创建 MySQL 数据库配置文件实现增删改查接口 Model 层mapper 层service 层controller 层测试 实现项目功能接口 代码测试 创建 Vue 前端 安装 Node.js配置…...

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…...

K8S认证|CKS题库+答案| 11. AppArmor

目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作&#xff1a; 1&#xff09;、切换集群 2&#xff09;、切换节点 3&#xff09;、切换到 apparmor 的目录 4&#xff09;、执行 apparmor 策略模块 5&#xff09;、修改 pod 文件 6&#xff09;、…...

深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法

深入浅出&#xff1a;JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中&#xff0c;随机数的生成看似简单&#xff0c;却隐藏着许多玄机。无论是生成密码、加密密钥&#xff0c;还是创建安全令牌&#xff0c;随机数的质量直接关系到系统的安全性。Jav…...

聊聊 Pulsar:Producer 源码解析

一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台&#xff0c;以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中&#xff0c;Producer&#xff08;生产者&#xff09; 是连接客户端应用与消息队列的第一步。生产者…...

电脑插入多块移动硬盘后经常出现卡顿和蓝屏

当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时&#xff0c;可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案&#xff1a; 1. 检查电源供电问题 问题原因&#xff1a;多块移动硬盘同时运行可能导致USB接口供电不足&#x…...

cf2117E

原题链接&#xff1a;https://codeforces.com/contest/2117/problem/E 题目背景&#xff1a; 给定两个数组a,b&#xff0c;可以执行多次以下操作&#xff1a;选择 i (1 < i < n - 1)&#xff0c;并设置 或&#xff0c;也可以在执行上述操作前执行一次删除任意 和 。求…...

Robots.txt 文件

什么是robots.txt&#xff1f; robots.txt 是一个位于网站根目录下的文本文件&#xff08;如&#xff1a;https://example.com/robots.txt&#xff09;&#xff0c;它用于指导网络爬虫&#xff08;如搜索引擎的蜘蛛程序&#xff09;如何抓取该网站的内容。这个文件遵循 Robots…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战

“&#x1f916;手搓TuyaAI语音指令 &#x1f60d;秒变表情包大师&#xff0c;让萌系Otto机器人&#x1f525;玩出智能新花样&#xff01;开整&#xff01;” &#x1f916; Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制&#xff08;TuyaAI…...

企业如何增强终端安全?

在数字化转型加速的今天&#xff0c;企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机&#xff0c;到工厂里的物联网设备、智能传感器&#xff0c;这些终端构成了企业与外部世界连接的 “神经末梢”。然而&#xff0c;随着远程办公的常态化和设备接入的爆炸式…...

Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?

在大数据处理领域&#xff0c;Hive 作为 Hadoop 生态中重要的数据仓库工具&#xff0c;其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式&#xff0c;很多开发者常常陷入选择困境。本文将从底…...