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...