天天看點

C語言中的除法

在C中,除法是有一些特殊的。

如果是兩個整數型的變量相除,如

10/3

,其結果是

3

,而不是

3.3333333

;又如

10/4

,其在C中的結果是

2

,而不是

2.5

。也就是說,整數型變量相除,如果其結果從數學角度上看是小數,無論是否可以四舍五入進位,C都會講小數點後的部分抛棄。

隻有将初始化變量為浮點數類型,其在C中相除的結果才會具有小數。

此外,如

double a=5/4;

,其數學計算的結果是

1.25

,但是在C中輸出的結果是

1

,即使是在語句中初始化變量

a

為浮點數。

這是因為初始化的變量是

a

,而不是算子

5

4

,這兩個數的類型依舊是整數型,其結果依舊遵循整數型變量相除的結果,隻是其結果

1

被指派給了一個浮點數變量

a

如果想對兩個浮點數相除的結果取整,即隻取其整數部分,可以像這樣做:

int centimeter = 35;
int foot = centimeter / (100 * 0.3048);
           

利用

int

可以取整。

繼續閱讀