C++语法14 双分支结构 if…else语句和逻辑运算符

2024-06-17 23:20

本文主要是介绍C++语法14 双分支结构 if…else语句和逻辑运算符,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

什么是双分支结构?

双分支:有两条路,而且这两条路都可以选择。如果满足判断条件,就执行语句1,不满足就执行语句2。

双分支结构基本框架

if(条件表达式)  //如果条件成立
{语句1;    //条件真时执行}
else             //否则
{语句2;    //条件假时执行
}

训练:期末成绩

乐乐在期末考试结束,感觉心里没底,于是提前去问老师考试情况,老师告诉他的得分为a,达到60分就是及格,未达到就是不及格。如果及格就输出happy(开心),不及格就输出sad(悲伤)。(0<=a<=100)

【输入格式】一个整数a,表示分数

【输出格式】happy或者sad

【输入样例】75

【输出样例】happy

解析

达到60分:达到60分是包括60分,且大于60分,如果用a表示分数,达到60分就是a>=60,输出“yes”

未到达60分:达到60分的相对面,即除去大于等于60的情况,输出“no”,这里用else语句

参考代码

#include <iostream>
using namespace std;
int main( )
{int a;cin>>a;if(a>=60)  cout<<"happy";else   cout<<"sad";return 0;
}

逻辑运算符

“并且”在C++中的写法为“&&”,它是一种运算符,称作逻辑运算符。

逻辑运算符有3种:

与、并且( && )

或者(||)

非(!)

&&(并且)

当参与运算的两个条件都为真时,结果才会真(1);否则为假(0)。

如:5>0 && 4>2

由于5>0为真,4>2也为真,相“与”的结果也为1。

5>6 && 4>2

由于5>6为假,则不管后面为不为真,相“与”结果都为0。

||(或者)

当参与运算的两个条件中只要有一个为真,结果就为真(1);当两个量都为假时,结果为假(0)。

如:5>0 || 4>8

由于5>0已经为真,不管后面是否为真,相或结果都为1;

5<0 || 4>8

由于5<0为假,4>8也为假,相或结果也为0。

&&和||的区别

if(a>b&&a>c)   cout<<a;

如果a比b大,a又比c大,a就是最大的。也就是说如果a是最大值就输出a

if(a>b||a>c)   cout<<a;

如果a比b大,或者a比c大,a就是不是最小的。

!(非)

当参与运算的量为真时,结果为假(0);当参与运算的量为假时,结果为真(1)。

如:!(5>0)

由于5>0的结果为真,非的结果为0。

!(4>8)

由于4>8的结果为假,非的结果为1。

训练:三人比赛

乐乐和克克希望跟老师比赛跑操场三圈。于是分别对三人的跑步时间进行了记录,乐乐花费时间a,克克花费时间b,老师花费时间c,三人约定只要乐乐和克克中有一个人能赢老师就算都赢了。请问他俩是否能赢得比赛?(a<=100,c<=100,b<=100)

【输入格式】三个正整数,a,b,c,分别表示三人的时间

【输出格式】yes或者no

【输入样例】10 15 12

【输出样例】yes

解析

用时少者赢:跑步比赛,时间用时少者赢得比赛

赢得比赛情况:乐乐与克克只要其中一人赢得比赛就算赢,即乐乐赢或者克克赢或者全赢,都算赢

参考代码

#include <iostream>
using namespace std;
int main( )
{int a,b,c;cin>>a>>b>>c;if(a<c||b<c)  cout<<"yes";else  cout<<"no";return 0;
}

 

这篇关于C++语法14 双分支结构 if…else语句和逻辑运算符的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1070686

相关文章

IDEA中新建/切换Git分支的实现步骤

《IDEA中新建/切换Git分支的实现步骤》本文主要介绍了IDEA中新建/切换Git分支的实现步骤,通过菜单创建新分支并选择是否切换,创建后在Git详情或右键Checkout中切换分支,感兴趣的可以了... 前提:项目已被Git托管1、点击上方栏Git->NewBrancjsh...2、输入新的分支的

从入门到精通C++11 <chrono> 库特性

《从入门到精通C++11<chrono>库特性》chrono库是C++11中一个非常强大和实用的库,它为时间处理提供了丰富的功能和类型安全的接口,通过本文的介绍,我们了解了chrono库的基本概念... 目录一、引言1.1 为什么需要<chrono>库1.2<chrono>库的基本概念二、时间段(Durat

C++20管道运算符的实现示例

《C++20管道运算符的实现示例》本文简要介绍C++20管道运算符的使用与实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录标准库的管道运算符使用自己实现类似的管道运算符我们不打算介绍太多,因为它实际属于c++20最为重要的

一文详解Git中分支本地和远程删除的方法

《一文详解Git中分支本地和远程删除的方法》在使用Git进行版本控制的过程中,我们会创建多个分支来进行不同功能的开发,这就容易涉及到如何正确地删除本地分支和远程分支,下面我们就来看看相关的实现方法吧... 目录技术背景实现步骤删除本地分支删除远程www.chinasem.cn分支同步删除信息到其他机器示例步骤

Visual Studio 2022 编译C++20代码的图文步骤

《VisualStudio2022编译C++20代码的图文步骤》在VisualStudio中启用C++20import功能,需设置语言标准为ISOC++20,开启扫描源查找模块依赖及实验性标... 默认创建Visual Studio桌面控制台项目代码包含C++20的import方法。右键项目的属性:

c++中的set容器介绍及操作大全

《c++中的set容器介绍及操作大全》:本文主要介绍c++中的set容器介绍及操作大全,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录​​一、核心特性​​️ ​​二、基本操作​​​​1. 初始化与赋值​​​​2. 增删查操作​​​​3. 遍历方

解析C++11 static_assert及与Boost库的关联从入门到精通

《解析C++11static_assert及与Boost库的关联从入门到精通》static_assert是C++中强大的编译时验证工具,它能够在编译阶段拦截不符合预期的类型或值,增强代码的健壮性,通... 目录一、背景知识:传统断言方法的局限性1.1 assert宏1.2 #error指令1.3 第三方解决

Mysql常见的SQL语句格式及实用技巧

《Mysql常见的SQL语句格式及实用技巧》本文系统梳理MySQL常见SQL语句格式,涵盖数据库与表的创建、删除、修改、查询操作,以及记录增删改查和多表关联等高级查询,同时提供索引优化、事务处理、临时... 目录一、常用语法汇总二、示例1.数据库操作2.表操作3.记录操作 4.高级查询三、实用技巧一、常用语

C++11委托构造函数和继承构造函数的实现

《C++11委托构造函数和继承构造函数的实现》C++引入了委托构造函数和继承构造函数这两个重要的特性,本文主要介绍了C++11委托构造函数和继承构造函数的实现,具有一定的参考价值,感兴趣的可以了解一下... 目录引言一、委托构造函数1.1 委托构造函数的定义与作用1.2 委托构造函数的语法1.3 委托构造函

C++11作用域枚举(Scoped Enums)的实现示例

《C++11作用域枚举(ScopedEnums)的实现示例》枚举类型是一种非常实用的工具,C++11标准引入了作用域枚举,也称为强类型枚举,本文主要介绍了C++11作用域枚举(ScopedEnums... 目录一、引言二、传统枚举类型的局限性2.1 命名空间污染2.2 整型提升问题2.3 类型转换问题三、C