[计算机软件及应用]第02章表达式、语句和运算符.pptVIP

  • 1
  • 0
  • 约5.62千字
  • 约 10页
  • 2018-03-04 发布于浙江
  • 举报

[计算机软件及应用]第02章表达式、语句和运算符.ppt

[计算机软件及应用]第02章表达式、语句和运算符

第02章表达式、语句和运算符 -2- 本章内容安排 语句 表达式 运算符 if-else语句 -3- 语句 除了预处理编译指令,C++程序由语句构成 语句是以分号结尾的指令。 可以在1行上放置多条语句(必须要以分号结束),但通常只在1行上放1条语句。 语句控制程序的执行流程、计算表达式、也可以什么也不干(空语句)。 x = a + b; -4- 空白 C++源代码中,空格、制表符和换行符统称为空白,空白是为了方便程序员阅读代码,编译器忽略空白。 下面的3条语句等价 x=a+b; x = a + b ; x = a+b; 编译器忽略空白,但标识符中间不能包含空格。 用于代码缩进的制表符和空格属于空白,良好和一致的缩进 有助于识别程序块和函数的开始和结束。 -5- 复合语句 将多条语句组合起来,放在{ }内,构成复合语句。 复合语句作为1个整体,可用于任何需要单条语句的地方。 函数体就是1个复合语句。 { temp = a; a = b; b = temp; } -6- 本章内容安排 语句 表达式 运算符 if-else语句 -7- 表达式 C++中任何一个计算值的操作都可以称为表达式,表达式总能返回一个值(计算结果)。 y + 13 z = x =y+13; 假设y的值为20,表达式计算y与13的和,返回计算结果33。 表达式y+13,计算y和13的和,返回值为33。 表达式x=y+13,将33赋值给x,返回值为x(33)。 表达式z=x=y+13,将33赋值给z,返回值为z(33),最后的 返回值被系统丢弃。 -8- 示例 #include iostream int main() { int x=0,y=72,z=0; std::coutBefore, x: x y: y; std::cout z: zstd::endl; z=x=y+13; std::coutAfter, x: x y: y; std::cout z: zstd::endl; return 0; } -9- 本章内容安排 语句 表达式 运算符 if-else语句 运算符 运算符是一种能使编译器执行某项操作的符号,如赋值、乘法、加法、除法等。 常用的两类运算符 赋值运算符 数学运算符 -10- 1、赋值运算符 赋值表达式由3个部分构成 左操作数(左值) 赋值运算符(=) 右操作数(右值) grade = 95; -11- 赋值运算符将右值保存到左值对应的变量中。 常量或表达式可以作为右值,但不能作为左值。 95=grade;和y+13=x;都是非法的赋值运算。 2、数学运算符 数学运算符有5个 加法:+ 减法:- 乘法:* 除法:/ 求模运算:% -12- C++中没有乘方运算符,其它语言中的乘方运算(x^2),在 C++中表示异或运算。 除法和求模运算的说明 参与除法运算的2个数都为整数时,除法为整数除法,余数被舍弃,21/4的结果为5。 求模运算返回整数除法的余数,21%4的结果为1。 只要参与运算的2个数中有1个浮点数,除法按照常规除法进行,21/4.0的结果为5.25。 -13- 求模运算的2个数必须为整型或字符数据,否则编译器报错。 3、组合运算符 经常需要将一个变量与一个值相加,再将结果写回该变量,正常语句为: score = score + 10; C++提供一种简捷的写法,使用+= score += 10; 类似的自赋值运算符有:-=、*=、/=、%= -14- 4、递增和递减运算符 C++提供++和--运算符,实现对变量的加1和减1运算,下面3种表达式等价。 score++; score=score+1; score+=1; -15- 前缀和后缀运算符 ++和--运算符都可以放在变量的前面或后面,最终都会使变量加1或减1,但执行时机不同。 如果将递增或递减运算符嵌入复杂表达式中,前缀和后缀的差异将表现出来。 int x=5; int x=5; int sum=++x; int sum=x++; -16- 前置++先递增x的值(变为6),再将其值赋给sum,最终x 和sum的结果都为6。 后置++先取x的值(为5),赋值给sum,再将其值递增,最终 x为6而sum为5。 运算符优先级 类似数学表达式,C++对复杂表达式,按照运算符优先级决定计算顺序。 每个运算符都有优先级,乘除的优先级高于加减 int x=5+3*8; //x的最终结果为29 int x=(5+3)*8; //x的最终结果为64 -17- 学习编程时,不必要记住所有运算符的优先级,查看表4.1。 对表达式中运算符优先级有疑

文档评论(0)

1亿VIP精品文档

相关文档