首页 > 编程语言 >08C++选择结构(2)——教学

08C++选择结构(2)——教学

时间:2024-11-08 17:58:42浏览次数:1  
标签:逻辑 流程图 08 C++ 教学 运算符 && 整除 表达式

一、逻辑变量

教学视频
存储类似灯亮或灯灭、是男还是女等结果只有两种可能的数据时,可以使用逻辑型变量。
逻辑型变量用关键字bool定义,所以又称为布尔变量,其值只有两个false(假)和true(真),false和true是逻辑常量,又称布尔常量。
流程图如下:

英汉小词典:
bool:布尔
false:假
true:真

二、逻辑运算符

教学视频
例程:试编一个程序,输入一个整数,若是3和5的公倍数,则输出“欧耶欧耶”。
流程图如下:

这个问题的条件有两个,能被3整除且能被5整除,即n%3和n%5等于零这两条件都要满足。此时,需要用到表示“而且”的逻辑运算符&&(逻辑与)

流程图:

逻辑运算符:逻辑与(而且)——— && 逻辑或(或者)——— || 逻辑非(否)——— !

(1)逻辑与&&:
逻辑与是一个双目运算符,使用时&&的两边各一个表达式,如果运算符的左右两边的表达式都为真,表达式整体才为真,否则即为假,如表达式:5&&6、1&&-1、1<2&&5都为真,3-3&&5、10--&&0这两个表达式都为假。

(2)逻辑或||:
逻辑或运算符也是一个双目运算符,使用时候要求两边各一个表达式,如果运算符左右两边的表达式只要有一个为真,那么逻辑或表达式的整体就为真,否则都为假,如表达式:3-3||5为真,0||5-5为假。

(3) 逻辑非!:
逻辑非是一个单目运算符,它表示取反的意思,放在表达式的左边,如!a ,即原先为真的表达式取反之后变为假,原先为假的表达式取反之后变为真。如表达式!0结果为1,!(2>1)结果为0。

三、逻辑运算符的优先级

教学视频
地球绕太阳公转一周的时间称为一个回归年,大约是365.2422天。而我们所使用的日历是基于365天的一年,这样每年就会有大约0.2422天的差异。为了弥补这个差异,每四年增加一天,即闰年中的2月有29天。但是,这样又稍微多出了一些时间,因此又设定了能被100整除但不能被400整除的年份不是闰年的规则,以进一步调整误差。

例程:

试编一个程序,输入一个年份,判断是闰年还是平年。
注:四年一闰,百年不闰,四百年再闰。判断闰年的条件是:年份能被4整除但不能被100整除;或者能被400整除。
流程图如下:

逻辑运算符的优先级:

四、复合语句

教学视频
试编一程序,输入两个整数,比较大小,并按从小到大的顺序输出。
编程思想:当a小于或等于b时,先输出a,再输出b;否则先输出b,再输出a。
流程图如下:

另一种方法:第1步先判断a是否大于b,当a大于b时,交换a和b的值;第2步输出a与b。
流程图:

使程序清晰易读的“逐层缩进”布置。

标签:逻辑,流程图,08,C++,教学,运算符,&&,整除,表达式
From: https://www.cnblogs.com/citStudy/p/18535570

相关文章

  • C++ 可变参数模板递归展开
    #include<iostream>usingnamespacestd;template<typenameHead,typename...Tail>doubleMax(Headfirst,Tail...rest){doubleMaxnum=0;Maxnum=Max(rest...);if(Maxnum<first)Maxnum=first;returnMaxnum;}......
  • 关于虚拟仿真云实验教学_解决方案及优势介绍!
    在科技飞速演进的潮流下,虚拟仿真技术正不断蓬勃发展,成为教育领域的一颗耀眼之星。作为创新的教育手段,虚拟仿真云教学正逐渐受到越来越多教育机构的高度重视与广泛应用。本文将为您详细探讨虚拟仿真云实验教学的解决方案及其所带来的多重优势。虚拟仿真云-教育培训解决方案虚拟......
  • 【QT项目】QT6项目之基于C++的通讯录管理系统(联系人/学生管理系统)
    目录一.项目背景二.创建工程工程创建添加文件 联系人类 功能类三.功能实现联系人类person.cppperson.h 查查询按钮槽函数返回按钮槽函数findperson.cpp:增addperson.cpp:删deleteperson.cpp:改changeperson.cpp:!!显示!!displayperson.cpp:清除clearp......
  • C++ 模板实参推断和引用折叠
    两个例外规则假定i是一个int对象,我们可能认为像£3(i)这样的调用是不合法的。毕竟,i是一个左值,而通常我们不能将一个右值引用绑定到一个左值上。但是,C++语言在正常绑定规则之外定义了两个例外规则,允许这种绑定。这两个例外规则是move这种标准库设施正确工作的基础。第一个例......
  • 07C++选择结构(1)
    一、基础知识1、关系运算符因为我们要对条件进行判断,必然会用到关系运算符:名称大于大于等于小于小于等于等于不等于符号>>=<<===!=关系表达式的值是一个逻辑值,即“真”(True)或“假”(False)。如果条件成立,其值为“真”;如果条件不成立,其值为“假”。2、逻......
  • 【C++进阶】智能指针的使用及原理(1)
    1.智能指针的使用场景分析下面程序中我们可以看到,new了以后,我们也delete了,但是因为抛异常导,后面的delete没有得到执行,所以就内存泄漏了,所以我们需要new以后捕获异常,捕获到异常后delete内存,再把异常抛出,但是因为new本身也可能抛异常,连续的两个new和下面的Divide都可能会抛异......
  • c++执行shell操作
     message("----->>>>>shelldemo/CMakeLists.txt")#收集当前目录下所有的.cpp文件aux_source_directory(.DIR_SRCS)#添加可执行文件add_executable(shelldemo${DIR_SRCS})#链接需要的库target_link_libraries(shelldemo${LIB_LIB})/shelldemo/CMakeList......
  • 【C++篇】无序中的法则:探索 STL之unordered_map 与 unordered_set容器的哈希美学
    文章目录C++`unordered_map`和`unordered_set`容器详解前言第一章:`unordered_map`和`unordered_set`的概念1.1`unordered_map`和`unordered_set`的定义1.2与`map`、`set`的区别第二章:`unordered_map`和`unordered_set`的构造方法2.1`unordered_map`......
  • Chromium 进程降权和提权模拟示例c++
     一、背景知识概念参考微软链接:强制完整性控制-Win32应用程序|Microsoft学习授权)(模拟级别-Win32apps|MicrosoftLearnDuplicateTokenEx函数(securitybaseapi.h)-Win32apps|MicrosoftLearn本文主要演示 low,medium,high,andsystem四种权限创建......
  • C++之OpenCV入门到提高004:Mat 对象的使用
    一、介绍今天是这个系列《C++之Opencv入门到提高》得第四篇文章。这篇文章很简单,介绍如何使用Mat对象来实例化图像实例,了解它的构造函数和常用的方法,这是基础,为以后的学习做好铺垫。虽然操作很简单,但是背后有很多东西需要我们深究,才能做到知其然知其所以然。OpenCV具......