当前位置: 首页 > 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++的小伙伴们可以私我拿到免费安装包

http://www.lryc.cn/news/398514.html

相关文章:

  • [C++]初识C++(命名空间,命名空间使用,函数重载,缺省参数等)
  • 每天一个数据分析题(四百十六)- 线性回归模型
  • JupyterNotebook中导出当前环境,并存储为requirements.txt
  • Java对象复制系列二: 手把手带你写一个Apache BeanUtils
  • 一个极简的 Vue 示例
  • 修复 Ubuntu 24.04 Dock 丢失应用程序图标
  • idea MarketPlace插件找不到
  • windows下使用编译opencv在qt中使用
  • 正则表达式-使用笔记
  • C语言中的数组:掌握数据的有序集合【一维数组,二维数组,字符串数组,直方图打印,计算全排列,字符数组常用函数】
  • 软件架构之计算机网络
  • Qt/C++项目积累: 2.主机监控器 - 2.2 历史功能实现
  • 初识Spring Web MVC
  • 【排序算法】归并排序
  • 游戏AI的创造思路-技术基础-决策树(2)
  • vue缓存页面,当tab切换时保留原有的查询条件
  • PythonConda系列(亲测有效):【解决方案】Collecting package metadata (current_repodata.json): failed
  • web前端开发——标签一(注释、标题、段落、换行、格式、图片)
  • Django 常见的操作符
  • AJAX是什么?原生语法格式?jQuery提供分装好的AJAX有什么区别?
  • docker基础知识以及windows上的docker desktop 安装
  • 【深度学习基础】环境搭建 linux系统下安装pytorch
  • 【Sql Server】sql server 2019设置远程访问,外网服务器需要设置好安全组入方向规则
  • idea启动vue项目一直卡死在51%,问题分析及其如何解决
  • 基于STM32设计的智能喂养系统(ESP8266+微信小程序)175
  • 第三方支付平台如何完美契合游戏行业?
  • 计算机网络 5.6网桥与交换机
  • CDH实操--集群卸载
  • 5G RedCap调查报告
  • 模型(卷积、fc、attention)计算量 MAC/FLOPs 的手动统计方法