回覆列表
-
1 # sfuei30299
-
2 # 使用者9147460208505
雖然我也是初學者,但是你這個問題我能解決!
(型別)(表示式)是強制轉換 由int i=1可知變數i是整形變數。double sum=0可知變數SUM為雙精度實數,1.0也是實數。
/是算數運算子表示除。/的兩邊的數的型別應該相同故可以用(double)i將i的資料型別強制轉換為double型也就是實數型來達到i 1.0 sum的型別相同方便C來計算。
while(i
{
sum=sum+1.0/(double)i;
i++;
}
就是sun等於1+1/2+1/3····+1/20
除強制轉換外C中還有自動轉換你好好看看常量,變數,資料型別的知識把!
sum是double型的i是整型的.sum+1.0/(double)i,這個是除法運算,(double)i是強制轉換為double型的. 除法運算子/ 和你理解的幾分之幾在有時候是有區別的,切不要認為就是肯定就是幾分之幾。 2分之3你也可以等價於3除以2,但有時候不是這樣的。具體現在很難想出具體情況。但肯定有這樣的情況。