C语言基本算数运算符如下表:
加法运算符 | + | 双目运算符,即应有两个量参与加法运算。如a+b,4+8等。具有右结合性。 |
减法运算符 | - | 双目运算符。但“-”也可作负值运算符,此时为单目运算,如-x,-5等具有左结合性。 |
乘法运算符 | * | 双目运算符,具有左结合性。 |
除法运算符 | / | 双目运算符,具有左结合性。参与运算量均为整型时,结果也为整型,舍去小数。如果运算量中有一个是实型(float或double),则结果为双精度实型。 |
求余运算符(模运算符) | % | 双目运算符,具有左结合性。要求参与运算的量均为整型,只能用于正数运算,不能应用于float或double类型。 求余运算的结果等于两数相除后的余数,整除时结果为0。 |
?
例1:3/2*2 的结果是 2 而不是 3。、
例2:
float f;
? int n=4;
? f=(1/n)*100;
f 的值是 0.0 而不是 25,与 f 是否是 float 型无关,即使用强制类型转化写成: f=(float)(1/n),也是这样;
正确的赋值语句是:
f=1.0/n;
或
f=(float)1/n;
?
原文:http://luochangzhi.iteye.com/blog/2288806