VB中,例如,保留小數點後3位,應該是1 170,但是它總是顯示為1 17,怎麼才能顯示

時間 2021-08-30 10:34:36

1樓:網海1書生

format函式的返回值型別是字串(只有字串才有可能保留後面的0),如果把它再賦值給一個數值變數(比如single或double),那麼它又變為數值了,後面的0肯定就沒了。換句話說就是format函式完全做了無用功!

format函式的作用主要是用來控制輸出格式的,不建議用來轉換資料的實際格式(比如取整、四捨五入什麼的)。取整用int函式,保留小數位用round函式。

你測試一下下面的語句就清楚了:

dim num as single, s as string

num = 1.17

print format(num, "0.000") '顯示的將是1.170,說明format函式是有效的

s = format(num, "0.000")

print s '顯示的也是1.170, 因為s是字元型的,所以後面的0被保留了

num = format(num, "0.000")

print num '這次顯示的將是1.17,因為num是數值型,而小數中最後面的0對於數字來說是無意義的,所以那個0就自動沒了。

2樓:

dim str as string

str=format(num,"0.000")

format函式返回的是字串。

0.00001111保留小數點以後4位有效數字應該是多少?

3樓:小小芝麻大大夢

1.111x10^-5。

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

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

擴充套件資料有效數字舍入規則

1、當保留n位有效數字,若第n+1位數字≤4就舍掉。

2、當保留n位有效數字,若第n+1位數字≥6時,則第n位數字進1。

3、當保留n位有效數字,若第n+1位數字=5且後面數字為0時 ,則第n位數字若為偶數時就舍掉後面的數字,若第n位數字為奇數時加1;若第n+1位數字=5且後面還有不為0的任何數字時,無論第n位數字是奇或是偶都加1。

4樓:

0.1111×10^-4

注意:小數點後到第一個非 0 數字之間的 0 全部都不算有效數字。

5樓:譜尼

是0.0000

需要從0算起

如有幫助,請採納,謝謝!

6樓:數碼小子

0.00001111要從小數點後不是零的那個記:

從1開始,四位,1111就對了

希望對你有幫助

7樓:毽緣

自左往右,從第一位不為零的數算起。所以,這題答案應該為:0.00001111

8樓:匿名使用者

1.111x10^-5

c語言中輸出時怎樣控制小數點後的位數,請舉例說明保留1、2、3、4位小數等等,謝謝

9樓:凌亂心扉

舉例說明如下:

1、float f1=3.1415926;

2、float f2=1234.1415926;

3、float f3=124.1;

4、printf("%3.4f",f1);//輸出結果為:_ _ 3.1416(_表示空格)

5、printf("%3.4f",f2);//輸出結果為:1234.1416

6、printf("%3.4f",f3);//輸出結果為:124.1000

printf("%3.4f",f);中的3是控制f的整數部分按3位的固定位寬輸出;4是按四捨五入的準則保留4位小數。

注:如果整數部分不足3位,則在前面補空格,超過3位,則按實際位數輸出;如果小數部分不足4,則在後面補0。

浮點型別

如果儲存比精度更重要,請考慮對浮點變數使用float型別。相反,如果精度是最重要的條件,則使用double型別。

浮點變數可以提升為更大基數的型別(從float型別到double型別)。當您對浮點變數執行算術時,通常會出現提升。此算術始終以與具有最高精度的變數一樣高的精度執行。

例如,請考慮下列型別宣告:

float f_short;double f_long;long double f_longer;f_short=f_short*f_long;

在前面的示例中,變數f_short提升到型別double並且與f_long相乘;然後,結果舍入到型別float,然後賦給f_short。

在以下示例中(使用前面示例中的宣告),將以浮點(32位)精度對變數執行算術;結果隨後將提升到double型別:

f_longer=f_short*f_short;

double f_long;

long double f_longer;

f_short=f_short*f_long;

在前面的示例中,變數f_short提升到型別double並且與f_long相乘;然後,結果舍入到型別float,然後賦給f_short。

在以下示例中(使用前面示例中的宣告),將以浮點(32位)精度對變數執行算術;結果隨後將提升到double型別:

f_longer=f_short*f_short;

10樓:匿名使用者

我們在輸出語句上加如0.就行了,比如printf("%0.2f",a); 就是保留2位.

上**#include

int main()

再上結果圖:

擴充套件資容料:小數在計算機中的儲存:

對於浮點型別的資料採用單精度型別(float)和雙精度型別(double)來儲存,float資料佔用 32bit,double資料佔用 64bit.其實不論是float型別還是double型別,在計算機記憶體中的儲存方式都是遵從ieee的規範的,float 遵從的是ieee r32.24 ,而double 遵從的是r64.

53。無論是單精度還是雙精度,在記憶體儲存中都分為3個部分:

1) 符號位(sign):0代表正,1代表為負;

2) 指數位(exponent):用於儲存科學計數法中的指數資料,並且採用移位儲存;

3) 尾數部分(mantissa):尾數部分

11樓:靠名真tm難起

%nf 即輸出的bai

數字佔dun位 當原數字位數zhi大dao

於n時原樣輸出,原數字位數小於回n時輸出數字左端補上空答格,比如原數字為a=1.23456;n為4時輸出為1.23456,n為9時輸出為(空格空格1.23456)

12樓:陳昇富你好

#include

void main()

以此類推權

你說的n指輸出的資料共佔n列

13樓:黃

n是你需要保留的多少位小數的位數,a為變數。比如:

float a=3.14159;

printf("%3f",a);

輸出的結果為:3.141

14樓:匿名使用者

一。%nf 即輸出的數

自字佔n位 當原數字位數大於n時原樣輸出,原數字位數小於n時輸出數字左端補上空格,比如原數字為a=1.23456;n為4時輸出為1.23456,n為9時輸出為

(空格空格1.23456)

二。%n.mf 即輸出總共佔n位其中有m位小數 如a=1.23456 用%4.2f輸出為1.23如果用

%5,1f輸出為123.4即長度為5小數為1!這裡也有當原數字長度小於n時左端補空格這個規則!

還有就是當n前面有個負號時即%-nf或%-n.mf時就右端補空格!

15樓:手機使用者

地址單元而定

#define uchar unsigned char#define uint unsigned intuchar xdata xram _at_ 0xff00[4];//指定外部儲存地址

uchar data1[4]; //你先把你的四位數每位單獨分離出回來存到這個4成員陣列答

void main(void)}

16樓:匿名使用者

保留1位小數 printf("%.1f",a);

保留2位小數 printf("%.2f",a);

保留3位小數 printf("%.3f",a);...

excel如何取整後保留2位小數點

向日葵 接著再在函式中依次輸入 b2 0 這裡 b2 代表了需要四捨五入數值的單元 最後按 enter 鍵,並向下拖動填充。結果如圖所示。大家在實際應用中可以隨便用一些數字來 excel中怎麼樣才能取整而且保留兩位小數 格子裡外 快速設定excel小數點位數,及round函式用法解釋 91濟世健康網...

我用ecel計算工資保留2位小數點再自動求和

九十四樓 可能是這樣 你的每個人的工資計算出來都是好多位小數,例如 a1的單元格公式算完 2345.345758,a2 3233.14678,沒有四捨五入到0.01。但你設定的顯示精度是兩位小數。這樣,a1就會顯示2345.35,a2就會顯示3233.15。可實際參與運算 比如求和 時,a1還是按2...

7化成迴圈小數後,小數點後第2019位數字為7,則a是多少

因為1 7 0.142857142857 142857迴圈 所以第2009位數字是5,故a 5 因為2 7 0.285714285714 285714迴圈 所以第2009位數字是1,故a 1 因為3 7 0.428571428571 428571迴圈 所以第2009位數字是7,故a 3.1 7 0....