當前位置:編程學習大全網 - 電腦編程 - C語言編程 2*4*6*8*……100,為何結果總是0?

C語言編程 2*4*6*8*……100,為何結果總是0?

這是因為這個計算結果太大了,應該有幾百位數吧,如果以米為單位已經遠遠超過目前已知的宇宙直徑了,用天文數字也無法形容這個數的巨大了。而在PC機上,別說int類型(最大值為32767),就是雙精度浮點數double也無法精確表示這個數字。

如果是計算2*4*6*8*.....*40這倒是可以的:

#include?<stdio.h>

int?main()

{

int?n?=?2;

double?chengji?=?1;

while?(n?<=?40)

{

chengji?*=?n;

n?+=?2;

}

printf("積為%0.0f\n",chengji);

return?0;

}

  • 上一篇:六軸機械手哪家比較好?
  • 下一篇:C#程序調試時出現stack overflow exception該怎麽解決
  • copyright 2024編程學習大全網