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

程序的控制结构——if-else语句(双分支结构)【互三互三】


目录

🍁 引言

🍁if-else语句(双分支结构)

👉格式1:

👉功能:

👉程序设计风格提示:

👉例题

👉格式2:

👉说明

👉例题

🍁目运算符 

👉说明

👉例题

🍁总结 

🍁备注


🚀欢迎互三👉程序猿方梓燚 💎💎
🚀所属专栏:C++教程💎

🚀关注博主,后期持续更新系列文章

🚀如果有错误感谢请大家批评指出,及时修改

🚀感谢大家点赞👍收藏评论✍ 

🍁 引言

if单分支选择结构只在条件为true时采取操作,条件为false时则忽略这个操作。利用if-else双分支选择结构则可以在条件为true时和条件为false时采取不同操作。

🍁if-else语句(双分支结构)

👉格式1:

if  (条件表达式)  语句1; 
else  语句2;

       

👉功能:

如果(条件表达式)的值为“真” ,即条件成立,则执行语句1,执行完“语句1”后继续执行整个if-else语句的后继语句;如果(条件表达式)的值为“假” ,即条件不成立,那么跳过语句1选择执行“语句2” ,执行完语句2后继续执行整个if-else语句的后继语句;也就是说if-else语句总是根据(条件表达式)的结果,选择“语句1”和“语句2”中的一个执行,执行完以后,整个if-else就算执行完了。执行流程如图所示

👉程序设计风格提示:

书写if-else语句时,if和else要对齐,而分支的语句部分要缩进两格。

👉例题

【例1】

输入温度t的值,判断是否适合晨练。(25<=t<=30,则适合晨练ok,否则不适合no)

示例代码:

#include<iostream>
using namespace std;
int main() {int t;cin >> t;if  ((t >= 25) && (t <= 30))cout << "ok\n";elsecout << "no\n";return 0;
}

👉格式2:

if  (条件表达式)  
{语句1;语句2;……  }
else  
{语句1;语句2;……
}

👉说明

若分支语句由多个句子构成,我们必须把这些句子括在一对花括号{ }内。

👉例题

【例2】

乘坐飞机时,当乘客行李小于等于20公斤时,按每公斤1.68元收费,大于20公斤时,按每公斤1.98元收费,编程计算收费(保留2位小数)。

示例代码:

#include<cstdio>
using namespace std;
int main( ) {float  w, p;scanf("%f", &w);if (w <= 20)printf("%.2f", w * 1.68);elseprintf("%.2f", w * 1.98);return 0;
}

if语句允许嵌套,即语句1和语句2还可以是if语句,当if语句嵌套时,约定else总是和最近的一个if语句配对。

【例3】

if (a>b) if (b>c) y=a;else y=c;

 else部分否定的是条件b>c,即它与第二个if语句配对;若想让else部分与第一个if语句配对,则要引入一个复合语句,将上述语句写成如下形式:

if (a>b){if (b>c) y=a;
}
else  y=c;

【例4】

 输入三个数,输出其中最大的数。

【方法1】

设maxn用于存放三个数中最大的数,输入的三个数存放在a、b、c中,那么如果a比b和c大,则最大数是a,否则,如果b比a和c大,则最大数是b,否则,最大数是c。

示例代码:

#include <iostream>
using namespace std;
int main() {float a, b, c, maxn;cin >> a >> b >> c;if (a >= b && a >= c) maxn = a; //判断a是否最大else if (b >= a && b >= c) maxn = b; //判断b是否最大else maxn = c;cout << maxn << endl;return 0;
}

【方法2】

设maxn用于存放三个数中最大的数,输入的三个数存放在a、b、c中,初值maxn=a,即假设a为最大,那么如果b>maxn,则此时的最大数应该是b即maxn=b,如果c>maxn,则最大数应该是c即maxn=c。

示例代码:

#include<iostream>
using namespace std;
int main(){float a,b,c,maxn;cin>>a>>b>>c;maxn=a;  	if (b>maxn) maxn=b;         //maxn为a,b中的最大值if (c>maxn) maxn=c;         //maxn为a,b,c中的最大值cout<<maxn<<endl;return 0;
}

🍁目运算符 

👉说明

c++有一个常用来代替if else 语句的操作符,这个操作符被称为三目运算符(?:),它是c++中唯一一个需要3个操作数的操作符。该操作符的通用格式如下:

b?a:c

如果 b为 true ,则整个表达式的值为 a;否则,整个表达式的值为c。下面两个语句演示了该操作符是如何工作的:

x=5>3?10:12           // 5>3为true,所以 x=10;
x=3==9?25:18          // 3==9为false,所以 x=18;

👉例题

【例5】

用三目运算符来确定两值中较大的一个。

示例代码:

#include<iostream>     
using namespace std;     
int main(){int a,b;cin>>a>>b;int c=a>b?a:b;// 相当于if (a>b) c=a; else c=b;cout<<c<<endl;return 0;
}

与if else序列相比,三目运算符更简洁,但第一次使用时不那么容易理解。这两种方法之间的区别是,三目运算符返回一个值,可以将其赋给变量或者将其放到一个更大的表达式中。

例如:

x=a>b?(c>d?e:f):g;

相当于 

if (a > b) {if (c > d) x = e;else x = f;} else {x = g;}

从可读性来说,条件操作符最适合于简单关系和简单表达式的值:

x=(a>b)?a:b;

当代码变得更复杂时,使用if else 语句表达更为清晰。

🍁总结 

有不懂的地方可以si我,和我一起学习C++吧。

🍁备注

还没有下载DEV-C++的小伙伴们可以私我拿到免费安装包

相关文章:

程序的控制结构——if-else语句(双分支结构)【互三互三】

目录 &#x1f341; 引言 &#x1f341;if-else语句&#xff08;双分支结构&#xff09; &#x1f449;格式1&#xff1a; &#x1f449;功能&#xff1a; &#x1f449;程序设计风格提示&#xff1a; &#x1f449;例题 &#x1f449;格式2&#xff1a; &#x1f449;…...

[C++]初识C++(命名空间,命名空间使用,函数重载,缺省参数等)

&#x1f496;&#x1f496;&#x1f496;欢迎来到我的博客&#xff0c;我是anmory&#x1f496;&#x1f496;&#x1f496; 又和大家见面了 欢迎来到C探索系列 作为一个程序员你不能不掌握的知识 先来自我推荐一波 个人网站欢迎访问以及捐款 推荐阅读 如何低成本搭建个人网站…...

每天一个数据分析题(四百十六)- 线性回归模型

根据模型假设&#xff0c;线性回归模型中误差项的方差为 A. 常数 B. 函数 C. 随机变量 D. 以上都不是 数据分析认证考试介绍&#xff1a;点击进入 题目来源于CDA模拟题库 点击此处获取答案 数据分析专项练习题库 内容涵盖Python&#xff0c;SQL&#xff0c;统计学&#…...

JupyterNotebook中导出当前环境,并存储为requirements.txt

​使用Anaconda管理Python环境时&#xff0c;可以轻松地导出环境配置&#xff0c;以便在其他机器或环境中重新创建相同的环境。可以通过生成一个environment.yml文件实现的&#xff0c;该文件包含了环境中安装的所有包及其版本。但是&#xff0c;常常在一些课程中JupyterNotebo…...

Java对象复制系列二: 手把手带你写一个Apache BeanUtils

&#x1f446;&#x1f3fb;&#x1f446;&#x1f3fb;&#x1f446;&#x1f3fb;关注博主&#xff0c;让你的代码变得更加优雅。 前言 Apache BeanUtils 是Java中用来复制2个对象属性的一个类型。 上一篇文章我们讲到了 Apache BeanUtils 性能相对比较差&#xff0c;今天…...

一个极简的 Vue 示例

https://andi.cn/page/621516.html...

修复 Ubuntu 24.04 Dock 丢失应用程序图标

找出应用程序窗口的类名 首先&#xff0c;您需要启动应用程序窗口。然后&#xff0c;按 Alt F2 启动“运行 Command”对话框。当对话框打开时&#xff0c;输入 lg 并按 Enter 键。 在该窗口中&#xff0c;单击Windows按钮&#xff0c;然后找出目标应用程序窗口的类名称。 在/…...

idea MarketPlace插件找不到

一、背景 好久没用idea了&#xff0c;打开项目后没有lombok&#xff0c;安装lombok插件时发现idea MarketPlace插件市场找不到&#xff0c;需要重新配置代理源&#xff0c;在外网访问时通过代理服务进行连接 二、操作 ### File-->setting 快捷键 Ctrl Alt S 远端源地…...

windows下使用编译opencv在qt中使用

记录一下&#xff1a;在windows下qt使用opencv 1、涉及需要下载的软件 CMake 下载地址opecnv下载地址mingw(需要配置环境变量) 这个在下载qt的时候可以直接安装一般在qt的安装路径下的tool里比如我的安装路径 (C:\zz\ProgramFiles\QT5.12\Tools\mingw730_64) 2、在安装好CMake…...

正则表达式-使用笔记

正则使用不当&#xff0c;会导致CPU飙升&#xff1b;场景区分&#xff0c;是判断存在还是提取内容&#xff1b;匹配范围&#xff0c;是匹配部分内容还是整行&#xff1b; 一、初识正则 正则表达式 – 语法 | 菜鸟教程 sparksql 正则匹配总结 https://www.cnblogs.com/he1m4n…...

C语言中的数组:掌握数据的有序集合【一维数组,二维数组,字符串数组,直方图打印,计算全排列,字符数组常用函数】

目录 C语言中的数组&#xff1a;掌握数据的有序集合【一维数组&#xff0c;二维数组&#xff0c;字符串数组】一维数组一维数组的创建数组的七种初始化完全初始化&#xff1a;部分初始化&#xff1a;字符数组的初始化&#xff1a;自动初始化为0&#xff1a;使用memset函数初始化…...

软件架构之计算机网络

软件架构之计算机网络 第 4 章 计算机网络4.1 网络架构与协议4.1.1 网络互联模型4.1.2 常见的网络协议4.1.3 IPv6 4.2 局域网与广域网4.2.2 无线局域网4.2.3 广域网技术4.2.4 网络接入技术 4.3 网络互连与常用设备4.4 网络工程4.4.1 网络规划4.4.2 网络设计4.4.3 网络实施 4.5 …...

Qt/C++项目积累: 2.主机监控器 - 2.2 历史功能实现

修订历史&#xff1a; 20240711&#xff1a;初始表设计&#xff0c;采用sqlite 正文&#xff1a; 关于历史数据存储&#xff0c;考虑的是用数据库来完成&#xff0c;目前考虑使用Sqlite和mysql&#xff0c;先用sqlite来实现&#xff0c;设计表过程如下&#xff1a; 机器总览…...

初识Spring Web MVC

1. 什么是 Spring Web MVC&#xff1f; Spring Web MVC 是基于 Servlet API 构建的原始 Web 框架&#xff0c;从⼀开始就包含在 Spring 框架中。它的正式名称“Spring Web MVC”来⾃其源模块的名称(Spring-webmvc)&#xff0c;但它通常被称为"SpringMVC".Servlet&am…...

【排序算法】归并排序

目录 一.基本思想 二.递归版本 三.非递归版本 四.特性总结 1.时间复杂度&#xff1a;O(N*logN) 2.空间复杂度&#xff1a;O(N) 3.稳定性&#xff1a;稳定 一.基本思想 归并排序是采用分治法的一个非常典型的应用。它将已经有序的序列合并为完全有序的序列&#xff0c;即…...

游戏AI的创造思路-技术基础-决策树(2)

上一篇写了决策树的基础概念和一些简单例子&#xff0c;本篇将着重在实际案例上进行说明 目录 8. 决策树应用的实际例子 8.1. 方法和过程 8.1.1. 定义行为 8.1.2. 确定属性 8.1.3. 构建决策树 8.1.4. 实施行为 8.1.5. 实时更新 8.2. Python代码 8. 决策树应用的实际例子…...

vue缓存页面,当tab切换时保留原有的查询条件

需求&#xff1a; 切换tab时&#xff0c;查询条件不变 路由页面&#xff1a; 单个页面上加这句话&#xff1a;...

PythonConda系列(亲测有效):【解决方案】Collecting package metadata (current_repodata.json): failed

【解决方案】Collecting package metadata (current_repodata.json&#xff09;: failed 问题描述解决方案小结参考文献 问题描述 在cmd下运行&#xff1a;conda install pylint -y&#xff0c;报错如下&#xff1a; C:\Users\apr> conda install --name apr pylint -y Co…...

web前端开发——标签一(注释、标题、段落、换行、格式、图片)

今天我来针对web前端开发讲解标签一 目录 html标签_标题&段落&换行 注释标签&#xff1a;Ctrl/ 标题标签&#xff1a; h1-h6 段落标签&#xff1a; 换行标签: 格式标签 图片标签_src属性 html标签_标题&段落&换行 注释标签&#xff1a;Ctrl/ Ctrl/ &…...

Django 常见的操作符

在filter() 方法&#xff0c;exclude() 方法中使用大于&#xff0c;小于&#xff0c;模糊匹配等操作符。 常见的操作符如下&#xff1a; 操作符含义示例等于Book.objects.filter(price10)! 或 __ne不等于用于查找字段不等于特定值的记录。但更常用exclude()方法。__gt大于用于…...

AJAX是什么?原生语法格式?jQuery提供分装好的AJAX有什么区别?

ajax 的全称 Asynchronous JavaScript and XML (异步 JavaScript 和 XML)。 AJAX是一种创建交互式网页应用的网页开发技术。其中最核心的依赖是浏览器提供的 XMLHttpRequest 对象&#xff0c;是这个对象使得浏览器可以发出 HTTP 请求与接收 HTTP 响应。实现了在页 面不刷新的…...

docker基础知识以及windows上的docker desktop 安装

记录以供备忘 基础概念&#xff1a; 什么是docker 将程序和环境一起打包&#xff0c;以在不同操作系统上运行的工具软件 什么是基础镜像 选一个基础操作系统和语言后&#xff0c;将对应的文件系统、依赖库、配置等打包为一个类似压缩包的文件&#xff0c;就是基础镜像 什么是…...

【深度学习基础】环境搭建 linux系统下安装pytorch

目录 一、anaconda 安装二、创建pytorch1. 创建pytorch环境&#xff1a;2. 激活环境3. 下载安装pytorch包4. 检查是否安装成功 一、anaconda 安装 具体的安装说明可以参考我的另外一篇文章【环境搭建】Linux报错bash: conda: command not found… 二、创建pytorch 1. 创建py…...

【Sql Server】sql server 2019设置远程访问,外网服务器需要设置好安全组入方向规则

大家好&#xff0c;我是全栈小5&#xff0c;欢迎来到《小5讲堂》。 这是《Sql Server》系列文章&#xff0c;每篇文章将以博主理解的角度展开讲解。 温馨提示&#xff1a;博主能力有限&#xff0c;理解水平有限&#xff0c;若有不对之处望指正&#xff01; 目录 前言1、无法链接…...

idea启动vue项目一直卡死在51%,问题分析及其如何解决

如果你的项目也一直卡在百分之几十&#xff0c;你可以参考下面的方法&#xff0c;试一试能否解决 问题描述&#xff1a; 通过在idea终端中输入命令 npm run serve 启动vue项目&#xff0c;启动进程一直卡在51% 如何解决&#xff1a; 检查 < template > 标签中的html内容…...

基于STM32设计的智能喂养系统(ESP8266+微信小程序)175

基于STM32设计的牛羊喂养系统(微信小程序)(175) 文章目录 一、前言1.1 项目介绍【1】项目功能介绍【2】项目硬件模块组成【3】ESP8266工作模式配置【4】上位机开发【5】项目模块划分1.2 项目功能需求1.3 项目开发背景1.4 开发工具的选择1.5 系统框架图1.6 系统原理图1.7 硬件实…...

第三方支付平台如何完美契合游戏行业?

在数字经济的浪潮中&#xff0c;游戏行业以其独特的魅力和创新能力&#xff0c;成为全球文化和经济交流的重要桥梁。然而&#xff0c;海外游戏商在进军中国市场时&#xff0c;常面临一系列难题。本文将通过一个故事案例&#xff0c;揭示第三方支付平台PASSTO PAY如何帮助海外游…...

计算机网络 5.6网桥与交换机

第六节 网桥与交换机 一、认识网桥 1.功能&#xff1a;连接两个具有相同或相似的网络结构的网络&#xff0c;解决网络之间距离太远问题&#xff0c;提高网络可靠性&#xff0c;还可以起过滤帧的作用而提高网络的性能。 2.适用场合&#xff1a;同构网。 3.特点&#xff1a; …...

CDH实操--集群卸载

作者&#xff1a;耀灵 1、停止正在运行的服务 a、控制台停止集群服务 b、控制台停止Cloudera Management Service c、命令行停止cm服务 systemctl stop cloudera-scm-agent #所有节点执行 systemctl stop cloudera-scm-server #cdh01节点执行2、主线并移除Parcles rm -r…...

5G RedCap调查报告

一、5G RedCap技术背景 5G RedCap(Reduced Capability缩写,轻量化5G),是3GPP标准化组织定义下的5G裁剪版本,是5G面向中高速率连接场景的物联网技术,它的能力介于5G NR(含eMBB和uRLLC)和LPWA(如LTE-M和NR-IoT)之间,如图1所示,是5G-A(5G Advanced)的关键技术之一。…...

个人域名可以做网站吗/百度怎么推广自己的视频

原文参考&#xff1a; https://blog.csdn.net/u014568921/article/details/52816578人脸检测长文干货&#xff01;走近人脸检测&#xff1a;从 VJ 到深度学习&#xff08;上&#xff09;长文干货&#xff01;走近人脸检测&#xff1a;从VJ到深度学习&#xff08;下&#xff09;…...

上海工商网站官网/seo关键词排名优化评价

本文讲的是CA推新解决方案 促进私有云发展&#xff0c;【IT168 资讯】IT管理软件供应商CA近日宣布了一项有关通过改善下一代虚拟化数据中心及私有云管理来优化IT服务的战略。CA称&#xff0c;其统一业务保障和自动化解决方案将会使得VMware的vSphere4虚拟环境及思科的虚拟网络交…...

网站设计团队有哪些职业/最好用的免费建站平台

在正式开始解码练习前先了解下关于FFmpeg中比较重要的函数以及数据结构。 1. 数据结构&#xff1a; (1) AVFormatContext AVFormatContext是一个贯穿始终的数据结构&#xff0c;很多函数都要用到它作为参数。FFmpeg代码中对这个数据结构的注释是&#xff1a;format I/O conte…...

售卖网站建设实验报告/网络营销出来可以干什么工作

es6 的 import 语法跟 require 不同&#xff0c;而且 import 必须放在文件的最开始&#xff0c;且前面不允许有其他逻辑代码&#xff0c;这和其他所有编程语言风格一致。 import不同与require&#xff0c;它是编译时的&#xff08;require是运行时的&#xff09;&#xff0c;它…...

科讯cms网站管理系统kesioncms/云服务器

LeetCode每日一题&#xff08;2020/3/5&#xff09; LeetCode这个月推出了每日一题打卡刷题计划&#xff0c;正好每天利用空闲时间打个卡&#xff0c;也在此记录总结一下。 这些题目都没有用数学方法求解&#xff0c;数学方法可以看LeetCode上的题解&#xff0c;讲的都非常详细…...

做外贸哪几个网站好/中国互联网数据平台

参考文章&#xff1a; flume kafka sparkstreaming整合后集群报错org.apache.kafka.clients.consumer.KafkaConsumer.subscribe(Ljava/ut https://blog.csdn.net/u010936936/article/details/77247075?locationNum2&fps1 最近在使用CDH 环境 提交 Kafka-Spark Streaming…...