C語言中有效數字的定義與數學中的定義有區別嗎

2022-06-05 05:45:13 字數 4297 閱讀 8120

1樓:折心灬小軒

你所說的有效數字是指?

如果是資料的值,不管是變數還是常量,

他的值都是一個固定的數,

這一點和數學中是一樣的,

不過儲存他們的量(變數或常量)是基於硬體的(儲存器),而現階段常用的記憶體條,在程式設計的過程中,可以抽象為一個線性陣列,

並且大小是有限的,

而且量的取值範圍是確定的。

所以除了大小限度以外,

和數學中的定義幾乎沒有其餘區別,

如果非要再多加一點不同,

那就是數學中的數可以一直加,

知道加到無限大,

但是計算機中的量只能表示一個數的範圍,

所以不能到無限大,

就是所謂的溢位。

相對於整數,實數(小數)就有的意思了,

c語言採用浮點數(計算機系統常用浮點數和定點數來表示實數)來表示實數。

實數在計算機內的儲存和整形有些不同。

整形資料的儲存就是他的二進位制資料的順序組合,實數的儲存是用「科學計數法」來表示的,

用階碼,尾碼等表示,比浮點數略微複雜一點。

在實際應用中,

整數會發生「截斷」,也叫「截短」或「溢位」,這是整形資料內部處理時發生的。

實數在有的時候會發生「截短」,

就是「四捨五入」,

指實數在不同資料型別之間轉換時發生「精度丟失」的情況滿意請採納,不滿意請追問

2樓:匿名使用者

有效數字位數是小數點以後的數字位數,而電腦輸出的數字位數決定於定義變數的模式,並一般採用「四捨五入」的方法。 如鍵盤輸入0.

333,儲存到變數i裡的數是0(約掉了) 如果改成: double i; 那就會儲存0.333000 在輸出數值的時候可以先設定有效數值位數:

在輸出的時候在電腦上會輸出「i = 0.

3330」 .在處理過程中不會當做有效數字位數來處理。

c語言中什麼是一個數的有效數字?

3樓:匿名使用者

樓上誤解

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

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

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

版效數字

權 後面小數都是無效的

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

4樓:天雲一號

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

舉例如下:

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

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

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

5樓:匿名使用者

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

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

6樓:一張稿紙

有效數來字位數是小數點以後的數字位源數bai,而電腦輸出的數字位數決定du於定義變數的模式zhi,並一dao般採用「四捨五入」的方法。

如 int i;

printf("enter a value for i...\n");

scanf("%d", &i);

鍵盤輸入0.333,儲存到變數i裡的數是0(約掉了)如果改成:

double i;

那就會儲存0.333000

在輸出數值的時候可以先設定有效數值位數:

double i;

printf("enter a value for i...\n");

scanf("%d", &i);

printf("\ni = %.4lf", i);

在輸出的時候在電腦上會輸出「i = 0.3330」

.在處理過程中不會當做有效數字位數來處理。

有效數字位數還可以通過常量來設定,在此不再贅述。

希望對你有用!

7樓:匿名使用者

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

2、舉例如內下:

如果數12.3是int型別,那麼

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

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

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

8樓:

以下所述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位數字,精度超出就輸出錯的,沒超出就是精確值

9樓:匿名使用者

#include

using namespace std;

int main()

試一下啦!

有效數字的定義

10樓:武全

具體地說,有效數字是指在分析工作中實際能夠測量到的數字。能夠測量到的是包括最後一位估計的,不確定的數字。 我們把通過直讀獲得的準確數字叫做可靠數字;把通過估讀得到的那部分數字叫做存疑數字。

把測量結果中能夠反映被測量大小的帶有一位存疑數字的全部數字叫有效數字。如圖中測得物體的長度5.15cm。

資料記錄時,我們記錄的資料和實驗結果真值一致的資料位便是有效數字。

另外在數學中,有效數字是指在一個數中,從該數的第一個非零數字起,直到末尾數字止的數字稱為有效數字,如0.618的有效數字有三個,分別是6,1,8。

有效數字是在整個計算過程中大致維持重要性的近似規則。 更復雜的科學規則被稱為不確定性的傳播。

數字往往是四捨五入,以避免報告微不足道的數字。 例如,如果秤僅測量到最接近的克,讀數為12.345公斤(有五個有效數字),則會產生12.

34500公斤(有七個有效數字)的測量誤差。 數字也可以簡單化,而不是指示給定的測量精度,例如,使它們在新聞廣播中更快地發音。

c語言中double定義的數是幹嘛的

11樓:shun瞬瞬

就是定義一個實數,比float精度更高,類似於用int定義一個整數。在c中是要先定義才能使用的,也就是說如果在後面的程式設計中需要用到一個用來存放實數的變數,要先進行定義。

12樓:

雙精度浮點數,這是擴張了數字的精度範圍,一般的float是4個位元組的,double是8個位元組的

13樓:

雙精度浮點數,類似於數學中的實數。

比如 3.14158、2.345、-5.0 等都可以賦值給 double 型的變數。

14樓:匿名使用者

雙精度浮點數,就是可以有小數的,而且精度比較高

15樓:匿名使用者

雙精度浮點型,就是有很多位小數的時候用這個型別定義

16樓:會飛的魚

定義一個長整型變數,佔4個位元組記憶體

17樓:重·陽日

相對於int定義整型變數

float定義實型變數

double也是定義實型變數,不過double定義的實型變數所佔位元組要比float定義的實型變數所佔的位元組要大,也就是說double定義的實型變數取值範圍更大。

比如:float a; (假設float型佔32個位元組) 則a的賦值範圍 -3.4*10(-38)~3.4*10(38)有效數字6-7位

double a; (假設double型佔64個位元組 則a的賦值範圍-1.7*10(-308)~1.7*10(308)有效數字15-16位

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

輸出控制符是不分單精度雙精度的,之所以有 f和 lf,完全是為了書寫規則的完善,沒有實際意義。都是double型的。f系統預設輸出6個小數點後的位,小數點前的不管多少都輸出為什麼可以完整地把12.123456輸出出來,單精度為6 7為有效數字 g 當指數小於 4或大於等於精度時採用 e或 e的格式,...

c語言中定義有元素的整型陣列,C語言中,定義一個有100個元素的整型陣列inta100,然後用迴圈產生100個隨機數求大神幫助

include include int main 注意,編譯文 du件字尾必zhi須是.c檔案。希望採dao納 c語言如何srand和rand函式產生10個1 100內的隨機數 需要準備的材料分別有 電腦 c語言 編譯器。1 首先,開啟c語言編譯器,新建一個初回始.cpp檔案,例如答 test.cp...

c語言中什麼是原型定義,C語言中函式的定義格式是什麼,函式原型宣告的語法格式?

我還直是不知道呢,我說說自己的理解吧,一個函式,可能在別外被引用或是在本檔案中但是要先引用了而後面才有函式定義,此時編譯器需要先行知道這個函式返回型別和引數類形,才可以正確的幫著做嚴格的資料型別和引數個數的檢查 如不提前申明就會當做是返回int 型,引數都當int型且不能檢查引數個數 這個函式在定義...