在C语言中算术运算符及表达式,是基础知识,但是却十分重要。在学习中少不了它们的身影,也少不了运算符的使用,对此学好相关运算符知识也很重要,不能因为其十分的基础而小瞧了它。
算术运算符分基本算术运算符和自增、自减运算符。
1.基本运算符
基本运算符包括:+、-、*、/、%。
+(加法运算符或正值运算符。如a+b,1+2,+5)。
-(减法运算符或负值运算符。如a-b,1-2,-5)。
*(乘法运算。如1*2,a*b)。
/(除号运算符。如5/2其值取整数2,5.0/2其值取浮点数2.5).
%(模运算符或求余运算符,%要求两侧均为整型数据。如5%2的值为1)。
说明:
(1)若除法运算符的运算对象均为整型数据,则结果为其商的整数部分,舍去小数部分.如 10/3的结果为3,若需得到3.333333,则必须将除数或被除数中至少一个改为实型数据类型,如10.0/3。若运算对象中有一个为负值,则舍入的方向是不固定的。如,-17/g在有的计算机上得到结是-1,有的计算机上得到结果是-2,但多数采取“向零取整”方法,即17/9=1,-17/9=-1,取整后向零靠拢。
(2)求余运算符(%)的运算对象必须是整型数据,运算结果的符号与被除数的符号相同,如:-17%9运算结果为-8,17%-9运算结果为8,-17%-9运算结果为-8。
(3)如果参加+,-,*,/运算的两个数有一个为实型,则结果为double型,因为所有实型都按double型进行计算。
2.自增、自减运算符
自增(++)和自减(--)运算符是单目运算符,其功能是使变量的值增1或减1。 y它们既可以作前缀运算符,如++i,--i;也可以作后缀运算符,如i++,i--。作为前缀和后缀运算符的处理方法是不同的:
++i和--i在使用i之前,先使i的值加(减)1。若i值为5,x=++i,则x为6,i值为6。
i++和i--在使用i之后,使i的值加(减)1。若i值为5,x=++i,则x为5,i值为6
自增或自减运算符在使用时,需要注意以下几点:
(1)运算符的操作对象,只能是变量,而不能作用于常量或表达式。
(2)运算符的优先级高于基本算术运算符,结合性是“自右向左”右结合。
例如:-i++,它相当于-(i++)形式,a+++b相当于(a++)+b形式。
- 算术表达式
算数表达式:用算术运算符和括号将运算对象连接起来的、符合C语法规则的式子为算术表达式,称为算术表达式运算对象可以是常量、变量、函数等。
说明:
(1)C语言算术表达式的乘号(*)不能省略。例如:数学式xy,相应的C表达式应该写成x*y。
(2)C语言表达式中只能出现字符集允许的字符。例如,数学式xr相应的C表达式应该写成PI*r*r(其中PI是已经声明的符号常量)。
(3)C语言算术表达式只使用圆括号改变运算的优先顺序(不能用()和[])。可以使用多层圆括号,此时左右括号必须配对,运算时从内层括号开始,由内向外依次计算表达式的值。