C++ 条件与 If 语句:掌握逻辑判断与流程控制精髓
C++ 条件和 If 语句
您已经知道 C++ 支持数学中的常见逻辑条件:
- 小于:
a < b - 小于或等于:
a <= b - 大于:
a > b - 大于或等于:
a >= b - 等于:
a == b - 不等于:
a != b
您可以使用这些条件来针对不同的决定执行不同的操作。
C++ 具有以下条件语句:
- 使用
if来指定一个代码块,如果指定的条件为 true,则执行该代码块 - 使用
else来指定一个代码块,如果相同的条件为 false,则执行该代码块 - 使用
else if来指定一个新的条件进行测试,如果第一个条件为 false,则执行该条件 - 使用
switch来指定许多替代代码块来执行
if 语句
使用 if 语句来指定一个代码块,如果条件为 true,则执行该代码块。
语法
if (condition) {
// 如果条件为 true,则执行的代码块
}
请注意,if 是小写字母。大写字母(If 或 IF)将生成错误。
在下面的示例中,我们测试两个值,以判断 20 是否大于 18。如果条件为 true,则打印一些文本:
示例
if (20 > 18) {
cout << "20 is greater than 18";
}
我们也可以测试变量:
示例
int x = 20;
int y = 18;
if (x > y) {
cout << "x is greater than y";
}
示例解释
在上面的示例中,我们使用两个变量 x 和 y 来测试 x 是否大于 y(使用 > 运算符)。由于 x 是 20,y 是 18,我们知道 20 大于 18,因此我们打印到屏幕上的是 "x is greater than y"。
如果 x 大于 y,则打印 "Hello World"。
int x = 50;
int y = 10;
if (x > y) {
cout << "Hello World";
}
else 语句
使用 else 语句来指定一个代码块,如果条件为 false,则执行该代码块。
语法
if (condition) {
// 如果条件为 true,则执行的代码块
} else {
// 如果条件为 false,则执行的代码块
}
示例
int time = 20;
if (time < 18) {
cout << "Good day.";
} else {
cout << "Good evening.";
}
// 输出 "Good evening."
示例解释
在上面的示例中,时间(20)大于 18,因此条件为 false。因此,我们进入 else 条件,并打印到屏幕上 "Good evening"。如果时间少于 18,则程序会打印 "Good day"。
else if 语句
使用 else if 语句在第一个条件为 false 时指定一个新条件。
语法
if (condition1) {
// 如果 condition1 为 true,则执行的代码块
} else if (condition2) {
// 如果 condition1 为 false 且 condition2 为 true,则执行的代码块
} else {
// 如果 condition1 和 condition2 均为 false,则执行的代码块
}
示例
int time = 22;
if (time < 10) {
cout << "Good morning.";
} else if (time < 20) {
cout << "Good day.";
} else {
cout << "Good evening.";
}
// 输出 "Good evening."
示例解释
在上面的示例中,时间(22)大于 10,因此第一个条件为 false。在 else if 语句中的下一个条件也为 false,因此我们进入 else 条件,因为 condition1 和 condition2 均为 false,并打印到屏幕上 "Good evening"。
然而,如果时间为 14,我们的程序将打印 "Good day"。
C++ 简写 If Else
简写 If...Else(三元运算符)
还有一种简写的 if else,称为三元运算符,因为它由三个操作数组成。它可以用来用单行代码替换多行代码。通常用于替换简单的 if else 语句:
语法
variable = (condition) ? expressionTrue : expressionFalse;
而不是编写:
示例
int time = 20;
if (time < 18) {
cout << "Good day.";
} else {
cout << "Good evening.";
}
您可以简单地编写:
示例
int time = 20;
string result = (time < 18) ? "Good day." : "Good evening.";
cout << result;
最后
为了方便其他设备和平台的小伙伴观看往期文章:
微信公众号搜索:Let us Coding,关注后即可获取最新文章推送
看完如果觉得有帮助,欢迎点赞、收藏、关注
C++ 条件与 If 语句:掌握逻辑判断与流程控制精髓的更多相关文章
- 高性能JavaScript 循环语句和流程控制
前言 上一篇探讨了达夫设备对于代码性能的影响,本文主要探讨并且测试各种常见的循环语句的性能以及流程控制中常见的优化. 循环语句 众所周知,常用的循环语句有for.while.do-while以及for ...
- python之最强王者(3)——变量,条件、循环语句
1.Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的 ...
- linux shell 流程控制(条件if,循环【for,while】,选择【case】语句实例 --转载
http://www.cnblogs.com/chengmo/archive/2010/10/14/1851434.html nux shell有一套自己的流程控制语句,其中包括条件语句(if),循环 ...
- Python 2.7 学习笔记 条件与循环语句
本文介绍下python条件和循环语句的语法 一.if条件语句 语法格式如下: if 表达式: .... elif 表达式: .... elif 表达式: .... else: ..... 说明:与其它 ...
- Python中的条件和循环语句
条件和循环语句 1. 条件语句 if单用 格式:if 条件表达式 例如:if 5 > 3: print('True') >>> 'True' #当条件满足时才会执行上述操作. ...
- Mariadb MySQL逻辑条件判断相关语句、函数使用举例介绍
MySQL逻辑条件判断相关语句.函数使用举例介绍 By:授客 QQ:1033553122 1. IFNULL函数介绍 IFNULL(expr1, expr2) 说明:假如expr1 不为NULL,则 ...
- python 流程控制(条件语句)
1,python流程控制单条件基本语句 2,python流程流程多条件控制语句 3,三元运算 1,python流程控制单条件基本语句 if 判断条件: 执行语句…… else: 执行语句…… 判断条件 ...
- java基础 流程控制和条件语句,循环语句
顺序结构 程序的顺序结构: 如果代码里没有流程控制,程序是按照书写的格式从上而下一行一行执行的, 一条语句执行完之后继续执行下一条语句,中间没有判断和跳转,直到程序的结束. if语句 if语句使用bo ...
- [转]linux shell 流程控制(条件if,循环【for,while】,选择【case】语句实例
原文链接:http://www.cnblogs.com/chengmo/archive/2010/10/14/1851434.html linux shell有一套自己的流程控制语句,其中包括条件语句 ...
- python实例 条件和循环语句
#! /usr/bin/python #条件和循环语句 x=int(input("Please enter an integer:")) if x<0: x=0 ...
随机推荐
- git开发流程图解,本地分支合并,并推送远程分支步骤
本地分支合并,并推送远程分支步骤 1.只有当将修改内容commit后 该修改才完全生效,进行merge前需要将两个分支修改的内容都进行commit 2.假设本地两个分支 用于开发的分支:dev 用于同 ...
- 【LeetCode链表#11】环形链表II(双指针)
环形链表II 力扣题目链接(opens new window) 题意: 给定一个链表,返回链表开始入环的第一个节点. 如果链表无环,则返回 null. 为了表示给定链表中的环,使用整数 pos 来表示 ...
- 第119篇: JavaScript 类
好家伙,我们先来复习一下 关于Java,类的三大特征: 1.封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏. 2.继承,继承性更 ...
- Postman/Jmeter工具实现接口测试,为什么还要用代码来实现接口自动化测试?
这种工具包括一些开源框架最大缺点就是不够灵活,如果是单接口的测试还行,但是有的项目接口比较庞大和负责,这种情况下就不大适用工具(工具适用于小型项目,代码适用于中大型项目) 主要有以下几个原因: 1敏捷 ...
- Educational Codeforces Round 145 (Rated for Div. 2)C. Sum on Subarrays(构造)
很意思的一道构造题 题意:给一个\(n.k\),让构造长度为n的数组满足,子数组为整数的个数为k个,负数的为\(k-(n+1)* n/2\),每个数的范围为\([-1000,1000]\) 这种构造题 ...
- java项目-尚硅谷项目三员工调度系统
导入工具类和数据 创建TeamSchedule项目,com.atguigu.team. view,com.atguigu.team.service,com.atguigu.team.domain包 , ...
- tag 转 分支 branch
获得最新 git fetch origin 获取tag git tag tag 转 branch git branch newbranch vtest.1.0.FINAL --- git branch ...
- 阿里云Python UDP Server和client基础教程
壹: socket通信是常用的一种通信方式,熟练掌握,快速的入戏,是一个程序员必备的素质. 贰: 注意:udp和tcp的套接字: 服务端代码: #!/usr/bin/env python3 # -*- ...
- c语言中float和double类型的区别
1.变量bai类型不同 float属于单du精度zhi型浮点数据. double属于双精度型浮点数据. 2.指数范围不同 float的指数范围为-127~128. double而double的指数范围 ...
- yum总纲
yum总纲 yum源搭建 首先本文档讲解两种搭建方式,第一有网络环境和第二种无网络环境. 第一种:有网络环境 首先 进入系统执行:以下命令,获取网络源 wget -O /etc/yum.repos.d ...