關於C語言中的隱式類型轉換
#include <stdio.h>int main () { float a; int b,c; a=2; b=3; c=a/b; printf("%f\n",c);}老師說如果有float和int,編譯器會自動轉換成float,但是這樣編譯後總是輸出0.00000,為什麼啊?問題在哪?
最佳回答:
因為a和b都是整數,所以a/b也是整數,然後賦值給c的時候,才隱士轉換為float
-
追問:
-
那如果把那裡改成
float a,b,c;
a=2,b=3;
c=a/b;
就可以得到小數結果了把?
-
回答:
-
是