c如何給float陣列定義其小數點後的位數急

2022-03-08 21:02:50 字數 3223 閱讀 8840

1樓:匿名使用者

float只能有六位有效數字,如果這個限制了的話可能需要你改用double了。也就是說,比如你想要的是55.12345,這個在float裡面只能是55.1234;

你說的功能如果是輸出printf的話就"%.5f",但是,你需要增加運算精度的話可能實現不了。

2樓:匿名使用者

float在程式中貌似不可以改小數點後位數,只可以在輸出時只輸出5位小數。

計算機只是別01碼,也就是說int型數字和float數字都是01碼組成,int型比較容易理解,如 101 = 1*2^2 + 0*2^1 + 1*2^0 = 5;

對於float數字 先將數字轉換成 純小數*10^n 形式,如2.5 = 0.25*10^1

0.023 = 0.23 *10^-1,然後儲存小數和指數n。小數部分儲存也是二進位制

101 = 1*2^-1 + 1*2^-3 = 0.5+0.125 = 0.625。

綜上,十進位制裡面的小數字數與此無絲毫關聯,所以沒法設定小數點後位數。

能是看一下你的問題嗎?一般不會有這種誤差的啊。

求c/c++ 程式設計 輸入乙個float型的資料,將整數和小數部分分別輸出,但有要求!!

3樓:匿名使用者

給你個思路:先將float強制轉換為int,就得到正數部分了,然後再用float減去這個int,就得到小數部分了

c語言中如何確定輸入的float型的小數點位數?

4樓:

輸入後,十進位制數變2進製。十進位制小數 化 2進製小數 常常 化不盡,所以用 大於小於來判斷float型是否正好大於小於某數值是困難的。

簡單辦法是用字串方法讀入,直接判斷字串。

float i;

char str[32];

int j,l;

scanf("%s",str);

sscanf(str,"%f",&i);

l = strlen(str);

然後查詢小數點,for (j=0;j

然後從最小的一位 str[l-1] 起迴圈,找到第乙個不是 0 的位置。 if (str[k] !='0')

算出位數。

(c++)double型的資料,如何保留小數點後四位?

5樓:匿名使用者

在計算時,可以使用floor函式+0.5來實現四捨五入。

例如:double a = 13.45656789;

double b;

b = floor(a * 10000.000f + 0.5) / 10000.000f; /*保留小數點後四位*/

在輸出時,直接使用printf格式輸出實現保留小數點後四位。

例如:double a = 13.45656789;

printf("%.4f",a);    /*保留小數點後四位*/

6樓:匿名使用者

四捨五入 保留四位小數

#include

double a = 13.45656789;

double b;

b = floor(a * 10000.000f + 0.5) / 10000.000f; /*保留小數點後四位*/

7樓:匿名使用者

以下為**:

#include

double a = 13.45656789;

double b;

b = floor(a * 10000.000f + 0.5) / 10000.000f; /*保留小數點後四位*/

編譯 & 執行 c++ 程式方法:

1、開啟vs2010,選擇"visual c++開發設定",然後點選"啟動visual studio"。

2、"visual studio"選擇預設環境設定。

3、進入"visual studio"後點選新建專案。

4、在彈出視窗選擇 visual c++標籤下的空專案,輸入名稱以及儲存位置。

5、在左側的"解決方案資源管理器"中,選擇"原始檔"右擊,然後選擇"新增"->"新建項"。

6、在彈出視窗中,選擇"c++檔案(.cpp)",輸入檔名稱,單擊"新增"。

7、現在輸入具體的**,例如輸入簡單的hello world程式。

8、依次單擊"除錯"->"開始執行(不除錯)"或按ctrl+f5開始執行。

8樓:大海中的漂泊船

floor(value)+floor((value - floor(value)) * 10000+ 0.5) / 10000; 防止double資料太大,乘以10000後溢位;

9樓:御風__弄影

#include

cout<

這就行了

10樓:

a=((int)a*10000)/10000

11樓:匿名使用者

cout<

cout<

12樓:成紅微生英飆

#include

#include

void main()

13樓:我真是瞎填的

c++格式怎麼變成c格式了

坐等!!! 程式設計序 要求輸入乙個浮點數,輸出時保留小數點後兩位,輸入的浮點數字數不定,用c語言程式設計

14樓:戊問鮃

這個實際上就是考察浮點型輸出位數的問題,如格式%m.nf, n就是輸出的小數字數,m是輸出地最少位數,明白了嗎

15樓:珍惜所有所愛

//是這樣嗎

#include

void main()

16樓:夜貓叫楓子

#include

int main( void )

乙個c++菜鳥的問題 float double的精度是多少含小數點

17樓:匿名使用者

浮點顧名思義精度不固定。在接近儲存限制的時候小數點浮動精度下降。平時float7位 double15位含小數點

C裡返回值為int型別陣列的函式如何定義

int 實際上是乙個類,它的基類是array.實際上,所有的陣列型別都是類,而且基類是array.int arr new int 10 實際上是建立了int這種型別的乙個物件,只是微軟為了讓大家習慣,就使用了類似c 的陣列定義方式。你的補充問題是不是這個意思 arr randques randque...

VBA中如何在宣告自定義函式之前給陣列賦值

可以在bai函式中定義靜態型別 dustatic a 只能定義通zhi用型別,否則isempty 檢查不dao出來。if isempty a then 這樣保證回陣列只賦值 答一次redim a 5 as string 對陣列賦值操作 end if vba自定義函式,當引數是陣列時,該如何書寫?兩個...

C含有的類如何在main函式中宣告定義其物件呢

比如int型別 dlinklisttar obj 就可以了 c 中我已經寫好了單鏈表的標頭檔案與標頭檔案中類函式的定義,怎麼在主函式中建立物件並呼叫?在main那裡要 include linklist.h 而不是cpp。然後你使用的是類模板,所以需要指定模板的型別 linklista r,5 這樣建...