C语言 算术表达式
算术表达式就是将操作数用算术运算符和括号连接起来的符合C语言规则的式子。操作数既可以是常量、变量,也可以是函数值。例如:
3+21/5-30, 2*PI*r,-b+sqrt(b*b-4*a*c)/(2*a)
sqrt()是求平方根函数。
上述算术运算符均为双目运算,即要求参与运算的对象有两个,且均具有左结合性,即同级运算符的运算规则为从左至右。
在算术运算符中乘法运算符“*”、除法运算符“/”、求余运算符“%”高于加法运算符“+” 减法运算符。但如果+、-是以正号、负号的形式出现,则为单目运算,具有右结合性,且优先级高于*、I等。算术表达式中出现括号的话,括号的优先级最高。
【例题】计算算术表达式的值
变量a、b、c已经定义:
float a=2.0;
int b=6,c=4;
求表达式 a*(b/c)-1 .S+'a'+fabsC-S)的值。
解题过程:
①括号的优先级最高,所以先if算括号中的b/c。
②计算表达式中出现的函数,计算出函数fabs()的值,fabs()函数是求浮点型数值的绝对值,包含在math, h头文件中。
③之后按照优先级计算、最后计算减法、加法。运算过程为:
a*(b/c)-1.5+'a'+fabs(-5)
=a*1-1.5+'a'+fabs(-5)
=a*1-1.5+'a'+5.0
=2.0-1.5+97+5.0
=0.5+97+5.0
=97.5+5.0
=102.5
点击加载更多评论>>