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

11.07学习

一、三中代码解决鸡兔同笼问题

1.直接解方程

#include <stdio.h>

 

int main() {

int heads, feet, chickens, rabbits;

printf("请输入总头数:");

scanf("%d", &heads);

printf("请输入总脚数:");

scanf("%d", &feet);

 

// 检查是否有解

if (feet % 2 != 0 || heads * 4 < feet || heads * 2 > feet) {

printf("无解\n");

} else {

rabbits = (feet - heads * 2) / 2; // 兔子数量

chickens = heads - rabbits; // 鸡的数量

printf("鸡的数量:%d\n", chickens);

printf("兔子的数量:%d\n", rabbits);

}

return 0;

}

 

 

2.循环穷举法

#include <stdio.h>

 

int main() {

int heads, feet, chickens, rabbits;

printf("请输入总头数:");

scanf("%d", &heads);

printf("请输入总脚数:");

scanf("%d", &feet);

 

for (chickens = 0; chickens <= heads; chickens++) {

rabbits = heads - chickens;

if (2 * chickens + 4 * rabbits == feet) {

printf("鸡的数量:%d\n", chickens);

printf("兔子的数量:%d\n", rabbits);

return 0;

}

}

printf("无解\n");

return 0;

}

 

 

3.函数封装解方程

#include <stdio.h>

 

// 函数声明

void solveChickenAndRabbit(int heads, int feet);

 

int main() {

int heads, feet;

printf("请输入总头数:");

scanf("%d", &heads);

printf("请输入总脚数:");

scanf("%d", &feet);

solveChickenAndRabbit(heads, feet);

return 0;

}

 

// 函数定义

void solveChickenAndRabbit(int heads, int feet) {

int rabbits, chickens;

// 检查是否有解

if (feet % 2 != 0 || heads * 4 < feet || heads * 2 > feet) {

printf("无解\n");

} else {

rabbits = (feet - heads * 2) / 2; // 兔子数量

chickens = heads - rabbits; // 鸡的数量

printf("鸡的数量:%d\n", chickens);

printf("兔子的数量:%d\n", rabbits);

}

}

 

二、韩信点兵

#include <stdio.h>

 

int main() {

int x;

// 假设兵数不超过3000,这是一个合理的上限

for (x = 0; x < 3000; x++) {

if (x % 5 == 1 && x % 6 == 5 && x % 7 == 4 && x % 11 == 10) {

printf("x = %d\n", x);

// 找到答案后可以退出循环

break;

}

}

return 0;

}

这段代码通过穷举法,检查每个数字是否满足题目中给出的条件,即按1到5报数余1,按1到6报数余5,按1到7报数余4,按1到11报数余10。一旦找到符合条件的数字,就打印出来并退出循环

 

三、无限循环

在C语言中,实现无限循环主要有以下几种方式:

1. while循环: 使用 while(1) 或者 while(条件) ,其中条件总是为真,从而形成无限循环。

while(1) {

// 循环体

}

2. for循环: 使用 for(;;) ,这是一个没有初始化、条件和迭代表达式的循环,因此会无限执行。

for(;;) {

// 循环体

}

3. goto语句: 使用 goto 语句跳转到循环的开始,但通常不推荐使用 goto ,因为它会使代码难以理解和维护。

loop:

// 循环体

goto loop;

4. 递归函数: 通过递归调用自身,可以实现无限循环,但需要注意栈溢出的问题。

void infinite_loop() {

// 循环体

infinite_loop();

}

5. 死循环检测: 在某些情况下,可能需要检测死循环,这可以通过设置一个理论上不可能达到的条件来实现。

while(0) {

// 循环体

}

6. 条件表达式: 使用条件表达式,使得循环条件总是为真。

while(true) {

// 循环体

}

7. 无限循环的退出: 在无限循环中,通常需要某种机制来退出循环,比如检测到特定条件后使用 break 语句。

while(1) {

if (some_condition) {

break;

}

// 循环体

}

8. 信号处理: 在多进程或多线程环境中,可以通过信号处理来退出无限循环。

9. 中断: 在嵌入式编程中,可以通过硬件中断来退出无限循环。

使用无限循环时,需要特别注意程序的健壮性和资源管理,确保程序能够在需要时安全退出循环。

 

 

相关文章:

11.07学习

一、三中代码解决鸡兔同笼问题 1.直接解方程 #include <stdio.h> int main() { int heads, feet, chickens, rabbits; printf("请输入总头数&#xff1a;"); scanf("%d", &heads); printf("请输入总脚数&#xff1a;"); scanf(…...

【JavaEE】常见锁策略、CAS

目录 常见的锁策略 乐观锁 vs 悲观锁 重量级锁 vs 轻量级锁 自锁锁和挂起等待锁 读写锁 可重入锁 vs 不可重入锁 公平锁 vs 非公平锁 CAS ABA问题 synchronized几个重要的机制 1、锁升级 2、锁消除 3、锁粗化 常见的锁策略 乐观锁 vs 悲观锁 乐观锁和悲观锁是锁的…...

Logstash 安装与部署(无坑版)

下载 版本对照关系&#xff1a;ElasticSearch 7.9.2 和 Logstash 7.9.2 &#xff1b; 官方下载地址 选择ElasticSearch版本一致的Logstash版本 https://www.elastic.co/cn/downloads/logstash 下载链接&#xff1a;https://artifacts.elastic.co/downloads/logstash/logst…...

鸿蒙开发:ArkUI Toggle 组件

ArkUI提供了一套完整的UI开发工具集&#xff0c;帮助开发者高效完成页面的开发。它融合了语言、编译器、图形构建等关键的应用UI开发底座&#xff0c;为应用的UI开发提供了完整的基础设施&#xff0c;包括简洁的UI语法、丰富的UI功能以及实时界面预览工具等&#xff0c;可以支持…...

使用Matlab神经网络工具箱

综述 在大数据和人工智能时代&#xff0c;神经网络是一种最为常见的数据分析和拟合工具。本报告以常用分析软件Matlab为例&#xff0c;介绍其中神经网络工具箱使用方法。 Step 1: 打开matlab 安装matlab 2018以上版本后&#xff0c;双击图标打开。 Step 2: 打开神经网络拟合…...

【面试题】Hive 查询:如何查找用户连续三天登录的记录

1. 需求概述 在分析用户行为时&#xff0c;查询用户的连续登录数据是一个常见需求。例如&#xff0c;我们需要找出每个用户连续三天登录的记录。给定一个包含用户登录记录的表&#xff0c;我们需要对这些数据进行处理&#xff0c;提取出用户连续三天登录的日期。 2. 问题说明…...

高活跃社区 Doge 与零知识证明的强强联手,QED 重塑可扩展性

在 Web3 的广阔生态中&#xff0c;Doge 无疑是最具标志性和趣味性的项目之一。作为一种起源于网络文化的符号&#xff0c;Doge 从最初的互联网玩笑发展为如今备受全球关注的去中心化资产&#xff0c;依靠其独特的魅力和广泛的用户基础&#xff0c;构建了一个充满活力的社区。 …...

qt QAbstractTableModel详解

1、概述 QAbstractTableModel 是 Qt 框架中的一个类&#xff0c;用于在 Qt 应用程序中实现自定义的表格数据模型。它是 Qt 中的一个抽象基类&#xff0c;提供了创建和操作表格数据所需的接口。QAbstractTableModel 为模型提供了一个标准接口&#xff0c;这些模型将其数据表示为…...

掌握 Navicat 数据库结构设计 | 提升工作效率的秘诀

近期&#xff0c;我们介绍了 Navicat 17 的一系列的新特性&#xff0c;包括&#xff1a;兼容更多数据库、全新的模型设计、可视化 BI、智能数据分析、可视化查询解释、高质量数据字典、增强用户体验、扩展 MongoDB 功能、轻松固定查询结果、便捷 URI、支持更多平台等。今天&…...

Ollama AI 框架缺陷可能导致 DoS、模型盗窃和中毒

近日&#xff0c;东方联盟网络安全研究人员披露了 Ollama 人工智能 (AI) 框架中的六个安全漏洞&#xff0c;恶意行为者可能会利用这些漏洞执行各种操作&#xff0c;包括拒绝服务、模型中毒和模型盗窃。 知名网络安全专家、东方联盟创始人郭盛华表示&#xff1a;“总的来说&…...

vue 3:监听器

目录 1. 基本概念 2. 侦听数据源类型 1. 监听getter函数 2. 监听 ref 或 reactive 的引用 3. 多个来源组成的数组 4. 避免直接传递值&#xff01;&#xff01;&#xff01; 3. 深层侦听器 4. 立即回调的侦听器 5. 一次性侦听器 6. watchEffect() 7. 暂停、恢复和停止…...

Java学习路线:Maven(四)Maven常用命令

在IDEA的Maven模块中&#xff0c;可以看到每个项目都有一个生命周期 这些生命周期实际上是Maven的一些插件&#xff0c;每个插件都有各自的功能&#xff0c;而双击这些插件就可以执行命令 这些命令的功能如下&#xff1a; clean&#xff1a;清除整个 target文件夹&#xff0c…...

服务器数据恢复—分区结构被破坏的reiserfs文件系统数据恢复案例

服务器数据恢复环境&#xff1a; 一台服务器中有一组由4块SAS硬盘组建的RAID5阵列&#xff0c;上层安装linux操作系统统。分区结构&#xff1a;boot分区LVM卷swap分区&#xff08;按照顺序&#xff09;&#xff0c;LVM卷中划分了一个reiserfs文件系统作为根分区。 服务器故障…...

lua入门教程:type函数

在Lua中&#xff0c;type 函数是一个内置函数&#xff0c;用于返回给定值的类型。Lua 支持多种数据类型&#xff0c;包括 nil&#xff08;空值&#xff09;、boolean&#xff08;布尔值&#xff09;、number&#xff08;数字&#xff09;、string&#xff08;字符串&#xff09…...

Java图片转word

该方法可以控制一页是否只显示存放一张图片 第一步 <dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>5.2.3</version></dependency><dependency><groupId>org.apache…...

立体视觉的核心技术:视差计算与图像校正详解

立体视觉的核心技术&#xff1a;视差计算与图像校正详解 在立体视觉中&#xff0c;通过双目相机&#xff08;即左右两台相机&#xff09;的不同视角捕获的图像&#xff0c;结合几何关系&#xff0c;我们可以推算出场景中物体的深度。本文将深入讲解如何基于视差&#xff08;di…...

PaddleNLP的FAQ问答机器人

项目源码获取方式见文章末尾&#xff01; 600多个深度学习项目资料&#xff0c;快来加入社群一起学习吧。 《------往期经典推荐------》 项目名称 1.【DDRNet模型创新实现人像分割】 2.【卫星图像道路检测DeepLabV3Plus模型】 3.【GAN模型实现二次元头像生成】 4.【CNN模型实…...

2024年12月中国多场国际学术会议,EI检索录用!

2024年12月&#xff0c;多场国际学术会议将在中国多地召开&#xff0c;涵盖AI、机器人、大数据、网络安全、传感制造、环境工程、物联网等领域&#xff0c;促进学术交流&#xff0c;录用论文将EI检索&#xff0c;诚邀国内外专家参会。 第三届人工智能、人机交互和机器人国际学…...

日语学习的难易程度

日语学习的难易程度是一个相对主观的问题&#xff0c;它受到多种因素的影响&#xff0c;包括个人的语言学习能力、学习方法、学习时间、学习资源的可获得性以及个人对日语文化的兴趣和投入程度等。以下是对日语学习难易程度的一些分析&#xff1a; 优点与易学之处 文字系统&am…...

java-web-web后端知识小结

spring框架三大核心: IOC--控制反转 DI---依赖注入 AOP--面向切面编程 web开发技术小结 1.过滤器,JWT令牌 2.三层架构 IOC, DI AOP, 全局异常处理, 事务管理 mybatis 3.数据操作与存储 mysql 阿里云OSS(云存储) 各个技术的归属: 1.过滤器, cookie,session--javaWeb 2.JWT, 阿里…...

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...

RocketMQ延迟消息机制

两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数&#xff0c;对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后&#xf…...

SciencePlots——绘制论文中的图片

文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了&#xff1a;一行…...

【网络安全产品大调研系列】2. 体验漏洞扫描

前言 2023 年漏洞扫描服务市场规模预计为 3.06&#xff08;十亿美元&#xff09;。漏洞扫描服务市场行业预计将从 2024 年的 3.48&#xff08;十亿美元&#xff09;增长到 2032 年的 9.54&#xff08;十亿美元&#xff09;。预测期内漏洞扫描服务市场 CAGR&#xff08;增长率&…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面

代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口&#xff08;适配服务端返回 Token&#xff09; export const login async (code, avatar) > {const res await http…...

WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)

一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解&#xff0c;适合用作学习或写简历项目背景说明。 &#x1f9e0; 一、概念简介&#xff1a;Solidity 合约开发 Solidity 是一种专门为 以太坊&#xff08;Ethereum&#xff09;平台编写智能合约的高级编…...

ios苹果系统,js 滑动屏幕、锚定无效

现象&#xff1a;window.addEventListener监听touch无效&#xff0c;划不动屏幕&#xff0c;但是代码逻辑都有执行到。 scrollIntoView也无效。 原因&#xff1a;这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作&#xff0c;从而会影响…...

dify打造数据可视化图表

一、概述 在日常工作和学习中&#xff0c;我们经常需要和数据打交道。无论是分析报告、项目展示&#xff0c;还是简单的数据洞察&#xff0c;一个清晰直观的图表&#xff0c;往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server&#xff0c;由蚂蚁集团 AntV 团队…...

Java线上CPU飙高问题排查全指南

一、引言 在Java应用的线上运行环境中&#xff0c;CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时&#xff0c;通常会导致应用响应缓慢&#xff0c;甚至服务不可用&#xff0c;严重影响用户体验和业务运行。因此&#xff0c;掌握一套科学有效的CPU飙高问题排查方法&…...

springboot整合VUE之在线教育管理系统简介

可以学习到的技能 学会常用技术栈的使用 独立开发项目 学会前端的开发流程 学会后端的开发流程 学会数据库的设计 学会前后端接口调用方式 学会多模块之间的关联 学会数据的处理 适用人群 在校学生&#xff0c;小白用户&#xff0c;想学习知识的 有点基础&#xff0c;想要通过项…...