c語言中什麼是數的有效數字,C語言中什麼是乙個數的有效數字?

2021-04-18 06:23:53 字數 3465 閱讀 2206

1樓:匿名使用者

樓上誤解

樓主問的是c語言 不是數學

這要看你的機器型別和變數型別了

如果定義的是int型 那1234是有

版效數字

權 後面小數都是無效的

如果定義的是float型 那在限定位元組長度內都是有效數字不同機器型別也不一樣 int型有2個位元組 也有4個位元組的

2樓:天雲一號

在c語言中,bai乙個數的有效數du字取決於該數字所屬的類zhi型。

舉例如下:

如果數dao12.3是int型別,那麼版12就是該數的權有效數字,小數部分無效;

如果數12.3是float型別,那麼12.3就是該數的有效數字。

如果數字超過其型別所能表示的範圍,那麼其就沒有效數字。

3樓:匿名使用者

有效數字是指從左邊第乙個非0的數起算乙個有效數字,1234.567017就一共有10個有效數字,像0.12就有2個有效數字

在c語言中,有效數字和有效數字怎麼解釋?

4樓:匿名使用者

1、在c語言中,乙個數的有效數字取決於該數字所屬的型別。

2、舉例如內下:

如果數12.3是int型別,那麼

容12就是該數的有效數字,小數部分無效;

如果數12.3是float型別,那麼12.3就是該數的有效數字。

如果數字超過其型別所能表示的範圍,那麼其就沒有效數字。

5樓:

以下所述bai都指vc6.0環境,其他的du可能有所不同。

單精度7位指

zhi的是整數dao部分加上小數部分的數字。比如版a=100000000.0/3.0;

printf("%10.20f\n",a);//輸出33333334.00000000000000000...(20個0)

a=10.0/3.0;

printf("%10.20f\n",a);//3.3333332537....(小權數部分共20位,但明顯小數部分6位有效數字以後是錯的)

.不算。

在printf的%f預設情況下(%和f間沒有輸出限制)是給小數部分輸出6位數字,精度超出就輸出錯的,沒超出就是精確值

6樓:匿名使用者

#include

using namespace std;

int main()

試一下啦!

c語言中的單精度資料的有效位數是什麼意思?

7樓:

c語言中的單精度浮點數的實際有效精度為24位二進位制,這相當於 24*log102≈7.2 位10進製的精度。尾數用23位儲存,加上預設的小數點前的1位1,2^(23+1) = 16777216。

因為 10^7 < 16777216 < 10^8,所以說單精度浮點數的有效位數是7位。

8樓:物理公司的

在ieee754標準中進行了單精度浮點數(float)和雙精度數浮點數(double)的定義。float有32bit,double有64bit。它們的構成包括符號位、指數字和尾數字。

這些位的構成如下:

float---第31位(佔1bit)---第30-23位(佔8bit)----第22-0位(佔23bit)

double--第63位(佔1bit)---第62-52位(佔11bit)---第51-0位(佔52bit)

取值範圍主要看指數部分:

float的指數部分有8bit(2^8),由於是有符號型,所以得到對應的指數範圍-128~128。

double的指數部分有11bit(2^11),由於是有符號型,所以得到對應的指數範圍-1024~1024。

由於float的指數部分對應的指數範圍為-128~128,所以取值範圍為:

-2^128到2^128,約等於-3.4e38 — +3.4e38

精度(有效數字)主要看尾數字:

float的尾數字是23bit,對應7~8位十進位制數,所以有效數字有的編譯器是7位,也有的是8位

9樓:御含靈

比如pi=3.1415926

但是計算機裡面單精度可能只能表示成

3.14159242

那麼有效位數就是小數點後6位

10樓:匿名使用者

就是有效儲存範圍,超過儲存範圍會不準確或者錯誤

11樓:匿名使用者

例如#include

void main()

輸出結果 7654321152.000000,7654321152.000000

在ieee754標準中進行了單精度浮點數(float)和雙精度數浮點數(double)的定義。float有32bit,double有64bit。它們的構成包括符號位、指數字和尾數字。

這些位的構成如下:

float---第31位(佔1bit)---第30-23位(佔8bit)----第22-0位(佔23bit)

double--第63位(佔1bit)---第62-52位(佔11bit)---第51-0位(佔52bit)

取值範圍主要看指數部分:

float的指數部分有8bit(2^8),由於是有符號型,所以得到對應的指數範圍-128~128。

double的指數部分有11bit(2^11),由於是有符號型,所以得到對應的指數範圍-1024~1024。

由於float的指數部分對應的指數範圍為-128~128,所以取值範圍為:

-2^128到2^128,約等於-3.4e38 — +3.4e38

精度(有效數字)主要看尾數字:

float的尾數字是23bit,對應7~8位十進位制數,所以有效數字有的編譯器是7位,也有的是8位

12樓:清泉天涯行

是這樣的,單精度資料是有個大小取值範圍的,在這個範圍就有效,如果資料過大就溢位

c語言 有效位數怎麼數

13樓:匿名使用者

1、首先開啟dev-c++。

2、然後寫好頭函式#include#include。

3、接著在寫好主函式。

4、求平方根版,sqrt()t=(int)sqrt((double)n );,**如下int n;int i;int t;printf("輸入乙個整權

數<=t; i++) }。

5、最後執行結果如下。

14樓:牛牛

有效位是整體的長度算上小數點後面。 有效數字是指的是小數點後面的數字

所以float單精度浮點型的有效數字是7位(算上小數字)

double 雙精度浮點型16位也是算上小數字。

15樓:守型英

從第一位不為零的數開始算起。

c語言中數字後面f是什麼意思C語言中數字後面f是什麼意思

表示這裡把100當成浮點數來處理,如果不加的話,這裡的temp應該是整型.整型數相除的結果還是整型,比如321 100 3,並不是等於3.21 讀語句中的格式 f 與 f 的意義相同,就是從輸入流中,按浮點數格式取乙個輸入元素。但 f 格式是 取乙個輸入元素後不傳給任何引數,換句話說,就是丟棄它。f...

C語言中,單精度型資料有效數字約是6 7位,數值範圍是約 3 4e 38 3 4e 38,怎麼得出來的求解

這個比較複雜,建議你找一下ieee754標準看一下。這個簡單說一下吧 在ieee754標準中進行了單精度浮點數 float 和雙精度數浮點數 double 的定義。float有32bit,double有64bit。它們的構成包括符號位 指數字和尾數字。這些位的構成如下 float 第31位 佔1bi...

c語言中怎樣將數字變成字母,c語言中怎樣將數字變成字母。

include include int main 具體什麼數字轉成什麼字元,給你碼表你看看吧看黃圈的地方,就是輸入98 輸出的字元 b 使用sprintf函式可以將數字按指定格式轉換成字串,與printf函式用法差不多,解決方案1 加 0 後強制型別轉換 如下程式,輸入數字,轉換成字串輸出 incl...