1、第 4章C世界中的加减乘除 运算符和表达式 C中的运算符和表达式 算术运算符和表达式 关系运算符和表达式 逻辑运算符和表达式 条件运算符和表达式 赋值运算符和表达式 自增、自减运算符 逗号运算符和表达式 运算符的优先级4.1 C中的运算符和表达式 4.1.1 运算符 4.1.2 表达式 4.1.3 优先级与结合性4.1.1 运算符用来对数据进行运算的符号,就可以称为运算符。语言中的运算符如下表所示:运算符种类 作用 包含运算符算 术 运算符 用于各 类 数 值 运算 加 (+)、减 (-)、乘 (*)、除 (/)、求余 (或称模运算, %)、自增 (+)、自减 (-)关系运算符 用于比 较 运
2、算 大于 ()、小于 (=)、小于等于()赋值 运算符 用于 赋值 运算 简单赋值 (=)、复合算 术赋值 (+=,-=,*=,/=,%=)、复合位运算 赋值 (&=,|=,=,=,b?a:b。 注意:条件运算符(?:)是 C语言中唯一的三目运算符。 4.1.2 表达式C中运算符和数据构成的式子,就称为表达式;表达式运算的结果就称为是表达式的值。根据运算符的分类, C语言的表达式分为以下 8类:算术表达式、关系表达式、逻辑表达式、赋值表达式、条件表达式、逗号表达式、位表达式和其它表达式等。由以上表达式还可以组成更复杂的表达式,例如:z=x+(y=0)4.1.3 优先级和结合性优先级:是指当不同
3、的运算符进行混合运算时,运算顺序是根据运算符的优先级而定的,优先级高的运算符先运算,优先级低的运算符后运算。结合性:是指运算符可以和左边的表达式结合,也可以与右边的表达式结合,即:左结合性和右结合性。例如: x+y*z 注意:最典型的右结合性运算符是赋值运算符,它的结合性是自右向左 4.2 算术运算符和表达式 4.2.1 算术运算符 4.2.2 算术表达式 4.2.3 算术运算符的优先级与结合性 4.2.4 应用举例4.2.1 算术运算符基本的算术运算符有 5个,分别是:o +:加法运算符或正值运算符 o -: 减法运算符或负值运算符 o *: 乘法运算符 o /: 除法运算符 o %:求模运
4、算符或求余运算符其中, +(正值运算符)和 -(负值运算符)是单目运算符,其余均为双目运算符。2x 2*xa/b4.2.2 算术表达式简单的算术表达式,例如:o 2+3:结果为: 5 o 2-3:结果为: -1o 2*3:结果为: 6o 2/3:结果为: 0o 2%3:结果为: 2注 意:(1)“%”运算符要求两侧的运算分量必须为整型数据; (2)在 C中,乘法运算符为 “*”,而不能写成数学中的 “”号;除法运算为 “/”,而不是 “”号 。6.0%4 -6%4 6%-4 -6%-44.2.2 算术表达式复杂的算术表达式,例如:o 2*(9/3) 结果为 : 6o 10/(12+8)%9) 结果为: 5