第6章 分支语句和逻辑运算符

第6章 分支语句和逻辑运算符

1. if语句

//if语句有两种格式
if (test-condition)			//第一种,if
    statement
if (test_condition)			//第二种,if-else
    statement1
else 
    statement2

2. 逻辑表达式

逻辑与&&、逻辑或||、逻辑非!,逻辑与和逻辑或优先级都低于关系运算符,逻辑与的优先级又高于逻辑或,逻辑非优先级高于所有算术运算符和逻辑运算符。

3. 字符函数库cctype

函数名称返回值
isalnum()如果参数是字母或者数字,函数返回true
isalpha()如果参数是字母,函数返回true
iscntrl()如果参数是控制字符,返回true
isdigit()如果参数是数字,返回true
islower()如果参数是小写字母,返回true
isprint()如果参数是打印字符,返回true
ispunct()如果参数是标点符号,返回true
isspace()如果参数是标准空白字符,返回true
isupper()如果参数是大写字母,返回true
tolower()如果参数是大写字符,返回其小写,否则返回该参数
toupper()如果参数是小写字符,返回其大写,否则返回该参数

4. ?:运算符

条件运算符?:用于代替if-else语句的运算符。

expression1 ? expression2 : expression3

5. switch语句

switch语句用于在大型列表中进行选择。

switch (integer-expression)			//intege-expression是一个结果为整数的表达式
{
    case label1 : statement			//匹配标签
    case label2 : statement
    ....
    default: statement				//除开上面所有情况下才会执行
}

6. break和continue

break跳出循环

continue跳出本次循环,开始下一轮循环

7. 处理错误输入

输入错误和EOF都将导致cin返回false,可以使用clear()重置错误输入标记。

程序发现用户输入错误内容时,应当:

  1. 重置cin以接受新的输入
  2. 删除错误输入
  3. 提示用户再输入

8. 简单文件输入/输出

利用cin进行输入时,程序将输入视为一系列的字节,其中每个字节都被解释为字符编码。不管目标数据类型是什么,输入一开始都是字符数据——文本数据。然后cin对象负责将文本数据转换为其他类型。

对于cout输出,执行相反的转换,将其他类型(如整型浮点型)转换为相应的字符序列。

cout用于控制台输出的基本事实:

  • 必须包含头文件iostream
  • 头文件iostream定义了一个用于处理输出的ostream类
  • 头文件iostream声明了一个名为cout的ostream对象
  • 必须指明名称空间std
  • 可以结合cout和运算符<<来显示各种类型的数据

文件输出与cout极其相似:

  • 必须包含头文件fstream
  • 头文件fstream定义了一个用于处理输出的ofstream类
  • 需要声明一个或多个ofstream对象,并对其命名
  • 必须指明名称空间
  • 需要将ofstream对象与文件关联。方法之一是使用open()方法
  • 使用完文件后,应使用方法close()将其关闭
  • 可结合使用ofstream对象和运算符<<来输出各种类型数据

重要的是,声明一个ofstream对象并将其同文件关联起来后,便可以像使用cout那样使用它,所有可用于cout的操作和方法都可用于ofstream对象。

注意:打开已有文件接受输出时,默认将其长度截断为零,因此原先内容将丢失。

文件输入和cin极其相似:

  • 必须包含头文件fstream
  • 头文件fstream中定义了一个用于处理输入的ifstream类
  • 需要声明一个或多个ifstream对象,并对其命名
  • 必须指明名称空间
  • 需要将ifstream对象与文件关联起来,方法之一是使用open()方法
  • 使用完文件,应使用close()方法将其关闭
  • 可结合使用ifstream对象和运算符>>读取各种类型数据
  • 可以使用ifstream对象和get()方法读取一个字符,使用ifstream对象和getline()方法读取一行字符
  • 可以结合使用ifstream和eof()、fail()方法来判断输入是否成功
  • ifstream对象本身被用作测试条件时,如果最后一个读取成功,将被转换为布尔值true,否则为false

重要的是,声明一个ifstream对象并将其同文件关联起来后,便可以像使用cin那样使用它,所有可用于cin的操作和方法都可用于ifstream对象。

不能试图打开一个不存在的文件用于输入,检查文件是否成功打开的方法is_open(),如果成功打开返回true,否则返回false

exit()函数原型是在头文件cstdlib中定义的,用于终止程序,其中还定义了一个用于同操作系统通信的参数EXIT_FAILURE。

ifstream查找文件默认在可执行文件所属文件夹中查找,除非在输入的文件名中包含路径。

方法eof()检查EOF,方法fail()检查读取类型不匹配情况和EOF,方法bad()文件受损或硬件故障。方法good()在没有发生任何错误时返回true。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值