實驗2 4 浮點型資料的輸入輸出

2021-06-03 10:10:45 字數 2100 閱讀 2708

實驗目的:

比照整型資料輸入輸出的**方式,研究浮點型資料的輸入輸出,在加深理解的基礎上能熟練使用浮點型資料。

實驗步驟:

//分數22/7小數點後有幾位?如果用它表示圓周率可以精確到哪一位?

1.填表並分析

float型

fafb

fcfd

值2.3

-0.0023

2.3e5

0.00023e-2

以%f格式預期的輸出為

以%e格式預期的輸出為

以%e格式預期的輸出為

以%f格式實際的輸出為

以%e格式實際的輸出為

以%e格式實際的輸出為

#include

void main()

float fa, fb, fc, fd;

fa = 2.3;

fb = -0.0023;

fc = 2.3e5;

fd = 0.00023e-2;

printf("%f,%e,%e\n", fa, fa, fa);

printf("%f,%e,%e\n", fb, fb, fb);

printf("%f,%e,%e\n", fc, fc, fc);

printf("%f,%e,%e\n", fd, fd, fd); 

分析:1)用格式字串%f、%e和%e輸出浮點型資料時有何特點?

2)小數形式的資料在輸出時與其字面量相比有何不同?

3)指數形式的資料在輸出時與其字面量相比有何不同?

4)浮點型字面量2.3、0.0023e2和23e-1儲存在單精度變數中時它們的儲存狀態相同嗎?

2.填表並分析

變數為float型

scanf("…", &fa, &fb, &fc, &fd)

以%f格式輸入

2.3 -0.0023 2.3e5 0.00023e-2

以%e格式輸入

2.3 -0.0023 2.3e5 0.00023e-2

以%e格式輸入

2.3 -0.0023 2.3e5 0.00023e-2

給出每次輸入後每個變數以%f格式的預期輸出,並通過下面程式驗證。

#include

void main()

float fa, fb, fc, fd;

scanf("%f%f%f%f", &fa, &fb, &fc, &fd);

printf("%f,%f, %f,%f\n", fa, fb, fc, fd);

scanf("%e%e%e%e", &fa, &fb, &fc, &fd);

printf("%f,%f, %f,%f\n", fa, fb, fc, fd);

scanf("%e%e%e%e", &fa, &fb, &fc, &fd);

printf("%f,%f, %f,%f\n", fa, fb, fc, fd);

分析:1)在輸入浮點型資料時,格式字元f,e,e有區別嗎?

2)浮點型字面量的小數形式與指數形式在使用上有區別嗎?(即能用小數形式的字面量的地方就可以用指數形式的,反之亦然。)

3.填表並程式設計驗證

float型

fafb

fcfd

值2.3

-0.0023

2.3e5

0.00023e-2

以%13.2f格式輸出為

以%3.0f格式輸出為

以%-13.2f格式輸出為

以%.15f格式輸出為 問:

1)計算域寬時考慮小數點和正負號等字元嗎?

2)資料的實際寬度超出域寬時怎樣輸出?

3)可以用.0的形式輸出浮點型變數嗎?

4)以%.15f格式輸出浮點型變數時小數點後有15位,怎樣理解這種現象?

float型

fafb

fcfd

值2.3

-0.0023

2.3e5

0.00023e-2

以%13.2e格式輸出為

以%3.0e格式輸出為

以%-13.2e格式輸出為

以%.15e格式輸出為

4.指數形式的字面量有多種形式,如2.e3、.8等,結合練習2.14總結合法的指數形式字面量的特點並程式設計驗證。

double型資料輸入輸出

double a scanf f a 應該使用scanf lf a 執行上面語句時,發現double型別的輸入不能使用 f進行輸入,得用 lf才能正常得到a的值。而在輸出double型別時卻可以用 f,這是因為printf只認識雙精度,遇到 f自動將float型的引數轉換成double型。但是因為s...

實驗2 6 字元型資料的輸入輸出

實驗目的 1.掌握double型浮點數與float型浮點數的區別 2.與整型資料相比,浮點型資料會出現誤差,只要使用浮點型資料就一定會出現誤差嗎?實驗步驟 1.填表並分析 double型 fafb fcfd 值2.3 0.0023 2.3e5 0.00023e 2 以 f格式預期的輸出為 以 e格式...

實驗八 輸入輸出流

問題描述 程式設計序,對 k 1,2,3,14,15,按下式分別計算出 15 組 i,d,c 整數 i 2 k 1 實數 d k k k 9.8 字元 c h k。並通過使用運算子 輸入形式 無 輸出形式 檔案內容要求 每組佔一行,每行中的輸出項用乙個空格進行分割。樣例輸入 無 樣例輸出 檔案內容格...