double和long long 的精度對比

2021-06-27 00:00:52 字數 973 閱讀 2167

時間限制:

600 ms  |  記憶體限制:

65535 kb

難度:2 描述

寫乙個程式實現指數運算 x^n。(1

輸入輸入包含多行資料 

每行資料是兩個整數x n

資料以eof結束

輸出於輸入的每一行輸出x^n的值

樣例輸入

2 1

3 2

樣例輸出

2

9

看起來好簡單,但是用double不過,long long過

double(雙精度浮點型)是計算機使用的一種資料型別。比起單精度浮點數(float),double(雙精度浮點數)使用 64 位(8位元組) 來儲存乙個浮點數。 它可以表示十進位制的15或16位有效數字,負值取值範圍為 -1.7976e+308 到 -4.94065645841246544e-324,正值取值範圍為 4.94065645841246544e-324 到 1.797693e+308[1]

也就是說double的精度(15或16位)比long long(19位)位要小

題目中最大值不超過9^19(=1.350851717672992e+18)正好19位。so,,,,,,

目前**在此:

#includeint main()

printf("%lld\n",a);}}

對於double和long long那個範圍大

先看double double是計算機使用的一種資料型別。比起單精度浮點數 float double 雙精度浮點數 使用 64 位 8位元組 來儲存乙個浮點數。它可以表示十進位制的15或16位有效數字,負值取值範圍為 1.7976e 308 到 4.94065645841246544e 324,正值...

列印long long資料

前言 在16位環境下,int unsigned int 佔16位,long unsignedlong佔32位 在32位環境下,int佔32位,unsigned int佔16位,long unsignedlong佔32位 何時需要使用 long和 int 範圍是 2 31,2 31 1 即 21474...

decimal,float和double的區別

一直很奇怪c 的預定義資料型別中為什麼加了乙個decimal,有float和double不就夠了嗎?今天來挖一挖。浮點型name cts type de script ion significant figures float system.single 32 bit single precisio...