C++_基础4-分支语句和逻辑运算符
这一部分截取自《C++ Primer Plus》,内容比较简单,很多只取了一些主题关键词,有空再补充;
设计智能程序的一个关键是使程序具有决策能力。
前面一种方式是循环——程序决定是否继续循环。
接下来研究使用分支语句在可选择的操作中做出决定。
条件运算符——提供了另一种决策方式;
逻辑运算符——允许将两个测试组合在一起;
==========================================
6.1 if语句
if (test-condition)
statement
if else中的两种操作都必须是一条语句。如果需要多条语句,需要用大括号将它们括起来,组成一个块语句。
6.1.1 if else语句
6.1.2 格式化if else语句
6.1.3 if else if else语句
=======================================
6.2 逻辑表达式
C++提供3种逻辑运算符,来组合或修改已有的表达式。
这些运算符符分别是:逻辑OR(||)、逻辑AND(&&)、逻辑NOT(!);
可以使用&&来设置取值范围;
逻辑运算符的优先级低于所有的算术运算符和关系运算符;
6.2.1 逻辑OR运算符||
6.2.2 逻辑AND运算符 &&
6.2.3 用&&来设置取值范围
6.2.4 逻辑NOT运算符 !
6.2.5 逻辑运算符细节
==========================================
6.3 字符函数库ctype
==========================================
6.4 ?:运算符
expression1 ? expresssion2 : expression3;
expression1 为True时,整个条件表达式的值为expression2;
expression1 为False时,整个条件表达式的值为expression3;
==========================================
6.5 switch语句
Switch(integer-expression)
{
Case label1 : statement(s)
Case label2 : statement(s)
Case label3 : statement(s)
Case label4 : statement(s)
}
integer-expression 必须是结果为整数值的表达式;
标签必须是int、char常量、也可以是枚举量;
==========================================
6.6 break和continue语句
break ---->直接跳出循环体;
continue ---->跳过循环体中余下的代码,并开始新一轮循环;
==========================================
6.7 读取数字的循环
cin >> fish[i] //如果输入成功,则转换后的值为true,否则为false。
测试条件中的表达式会从左往右判断,一旦为false,就停止继续判断。
cin.clear() // 重置cin
==========================================
6.8 简单文件输入/输出
有时候通过键盘输入并不是最好的选择;
让程序直接读取文件,输出到文件,都很方便。
6.8.1 文本I/O和文本文件
6.8.2 写入到文本文件中
包含头文件fstream;
创建一个ofstream对象;
将该ofstream对象同一个文件关联起来;
就像使用cout那样使用该ofstream对象;
6.8.3 读取文本文件
==========================================
6.9 总结
C++提供了if语句、if else语句、switch语句来管理选项;
C++提供了帮助决策的运算符,逻辑运算符、关系运算符(关系表达式作为测试条件,逻辑运算符来组合和修改关系表达式);条件运算符提供了两值选一的简洁方式;
ctype提供了一组方便、强大的工具,来分析字符输入;
文件I/O与控制台I/O极其相似;声明ifstream和ofstream对象,并将它们同文件关联起来,便可以像使用cin和cout那样使用这些对象。
使用循环和决策语句;
C++_基础4-分支语句和逻辑运算符的更多相关文章
- C++ primer plus读书笔记——第6章 分支语句和逻辑运算符
第6章 分支语句和逻辑运算符 1. 逻辑运算符的优先级比关系运算符的优先级低. 2. &&的优先级高于||. 3. cctype中的函数P179. 4. switch(integer- ...
- JS基础语法---分支语句总结
分支语句: if语句:一个分支 if-else语句:两个分支,最终只执行一个分支 if-else if-else if...语句: 多个分支,也是只会执行一个 switch-case语句:多分支语句, ...
- JS基础语法---分支语句之:switch-case语句---3个练习
switch-case语句---分支语句---多分支语句 语法: switch(表达式){ case 值1:代码1;break; case 值2:代码2;break; case 值3:代码3;brea ...
- JS基础语法---分支语句之:三元表达式
获取两个数字中的最大值 用if-else语句 var num1 = 10; var num2 = 100; if (num1 > num2) { ...
- JS基础语法---分支语句之:if语句,if-else语句,if-ever if语句
//if语句只有一个分支 //if-else语句有两个分支,最终执行一个分支 //if-else if-else if-else if-else if..........else---多分支,最终也是 ...
- c++primerplus(第六版)编程题——第6章(分支语句和逻辑运算符)
声明:作者为了调试方便,每一章的程序写在一个工程文件中,每一道编程练习题新建一个独立文件,在主函数中调用,我建议同我一样的初学者可以采用这种方式,调试起来会比较方便. (具体方式参见第3章模板) 1. ...
- C++ Primer Plus 6th 读书笔记 - 第6章 分支语句和逻辑运算符
1. cin读取错误时对换行符的处理 #include <iostream> using namespace std; int main() { double d; char c; cin ...
- [C++ Primer Plus] 第6章、分支语句和逻辑运算符(二)课后习题
一.复习题 3. #include<iostream> using namespace std; void main() { char ch; int c1, c2; c1 = c2 = ...
- 重拾c++第三天(6):分支语句与逻辑运算符
1.逻辑运算符 && || ! 2.关系运算符优先级高于逻辑运算符 3.cctype库中好用的判断 4. ?:符号用法: 状态1?结果1:结果2 5.switch用法: switch ...
随机推荐
- Junit问题01 利用 @Autowired 注入失效问题
1 利用 @Autowired 注入失效问题 1.1 问题描述 在使用Junit作为测试框架的单元测试中,直接了用@Autowired记性依赖注入时总是注入失败 1.2 问题原因 在测试类中没有设定上 ...
- 605. Can Place Flowers零一间隔种花
[抄题]: Suppose you have a long flowerbed in which some of the plots are planted and some are not. How ...
- UOJ#22. 【UR #1】外星人
传送门 分析 我们发现一个很神的性质,就是对于一个数如果放在它之前的数小于它那它一定对答案没有贡献 于是我们用dp[i][j]表示从大往小考虑了前i个数,当前答案是j的方案数 我们知道它由两种情况转移 ...
- asp.net服务器推送长连接
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx. ...
- Ajax——jQuery实现
紧接上文 一.load()方法 load() 方法师jQuery中最为简单和常用的Ajax方法,能载入远程的HTML代码并插入到DOM中.它的机构是:load(url[,data][,callback ...
- Input的size与maxlength属性的区别
最近做项目用到input的size和maxlength属性,以前只顾用没有用心去看看这2个标签的区别,今天周末baidu了一下,有所理解.特记录于此! <p>Name: <inp ...
- (转)Asp.Net底层原理(三、Asp.Net请求响应过程)
原文地址:http://www.cnblogs.com/liuhf939/archive/2013/09/16/3324753.html 在之前,我们写了自己的Asp.Net框架,对整个流程有了一个大 ...
- 为docker设置国内镜像
docker的默认镜像(https://hub.docker.com/)地址,拉取镜像时是比较慢的,经常会超时,有时拉取几个小时.为了加快拉取的时间和速度,需要添加中国的镜像地址: 国内的加速地址: ...
- MongoDB整理笔记の索引
MongoDB 提供了多样性的索引支持,索引信息被保存在system.indexes 中,且默认总是为_id创建索引,它的索引使用基本和MySQL 等关系型数据库一样.其实可以这样说说,索引是凌驾于数 ...
- Django项目运行时出现self.status.split(' ',1)[0], self.bytes_sent,ConnectionAbortedError: [WinError 10053] 你的主机中的软件中止了一个已建立的连接。
[02/Nov/2018 09:46:51] "GET /new_industry/category HTTP/1.1" 200 2891792 Traceback (most r ...