計算機c語言輸入數包含小數部分例

2021-04-17 14:14:05 字數 5559 閱讀 5100

1樓:匿名使用者

輸出結果用整數型的輸出方式就好了。

2樓:育知同創教育

參考:#include

#include

#define places 3

void extract(double x)int main()

3樓:gta小雞

#include

int main()

4樓:雲逸

#include

#include

#include

int main()

c語言中一個數的小數如何表示

5樓:匿名使用者

4.2用c語言表示:double d = 4.2。c語言中用於描述小數的資料型別是float和double,float型別表示單精度浮點數,double表示雙精度浮點數。

1、float:

float 資料型別用於儲存單精度浮點數或雙精度浮點數。浮點型別的單精度值具有 4 個位元組,包括一個符號位、一個 8 位 excess-127 二進位制指數和一個 23 位尾數。

2、double:

double(雙精度浮點數)使用 64 位(8位元組) 來儲存一個浮點數。 它可以表示十進位制的15或16位有效數字。

擴充套件資料

(1) 浮點型與整型

將浮點數(單雙精度)轉換為整數時,將捨棄浮點數的小數部分, 只保留整數部分。將整型值賦給浮點型變數,數值不變,只將形式改為浮點形式, 即小數點後帶若干個0。注意:

賦值時的型別轉換實際上是強制的。

(2) 單、雙精度浮點型

由於c語言中的浮點值總是用雙精度表示的,所以float 型資料只是在尾部加0延長為double型資料參加運算,然後直接賦值。double型資料轉換為float型時,通過截尾數來實現,截斷前要進行四捨五入操作。

6樓:blackpink_羅捷

兩種表示

方式:1、定點表示:必須有小數點。

例如:0.123, .123, 123.0。

2、指數表示:e或e之前必須有數字,指數必須為整數。

例如:12.3e3 ,123e2, 1.23e4。

注意:浮點數常量預設為double型別,如果浮點數常量表示float型別,在末尾新增小寫的f或者大寫的f,表示此常量為單精度浮點常量。

定點小數是純小數,約定的小數點位置在符號位之後、有效數值部分最高位之前。若資料x的形式為x=x0.x1x2…xn(其中x0為符號位,x1~xn是數值的有效部分,也稱為尾數,x1為最高有效位),則在計算機中的表示形式為:

一般說來,如果最末位xn= 1,前面各位都為0,則數的絕對值最小,即|x|min= 2^(-n)。如果各位均為1,則數的絕對值最大,即|x|max=1-2^(-n)。所以定點小數的表示範圍是:

2^(-n)≤|x|≤1 -2^(-n)。

擴充套件資料

由於「編碼總位數為8」的限制,真值-128無法用原碼、反碼來表示,似乎不能用上述規則來求解補碼,但實際上是可行的——只要不管它的最高位即可,操作辦法如下:

將128化為二進位制為:1 0000000,最高位為1,可以只對捨去最高位後剩餘的7位進行處理即可,首先取反得:1111111,加1得:

1 0000000,最高位有進位需丟棄,即得:0000000,加上符號位就得補碼:1 0000000。

又如,當編碼總位數為4時,真值x=+0.101的原碼、反碼、補碼均為:0 101。

真值x=-0.101的原碼、反碼、補碼依次為:1 101、1 010、1 011。

同理,特例,-1的補碼為:1 000。

在定點小數中,小數點隱含在第一位編碼和第二位編碼之間

定點小數,是指小數點準確固定在資料某個位置上的小數,從實用角度看,都把小數點固定在最高資料位的左邊,小數點前邊再設一位符號位。按此規則,任何一個小數都可以被寫成 :n = ns .

n-1 n-2 … n-m。

7樓:

我想你的意思是這樣的,a變數為浮點型資料(4.2),想得知其小數部分。

不知道是不是呢?

如果是的話,那麼:

float b = a-(int)(a);

8樓:匿名使用者

c語言中用於描述小數的資料型別是float和double,float型別表示單精度浮點數,double表示雙精度浮點數。

c語言中浮點數常量有兩種表示方式:

1、定點表示:(必須有小數點) 如:0.123, .123, 123.0。

2、指數表示:(e或e之前必須有數字,指數必須為整數)如:12.3e3 ,123e2, 1.23e4。

錯誤的寫法:e-5 ,1.2e-3.5,e3。

注意:浮點數常量預設為double型別,如果浮點數常量表示float型別,請在末尾新增小寫的f或者大寫的f,表示此常量為單精度浮點常量。

float f1 = 1.1f; //小寫f

float f2 = 1.1f; //大寫f

double d = 1.1; //double型別

9樓:中國中醫拔罐器

好像有什麼函式吧。

不過一般的思路都是。

double d=4.2;

double m;

m=d-int(d);

printf("m=%0.1f",m ) //要幾位就零點幾位。

c語言中小數怎麼表示

10樓:大野瘦子

兩種表示方式:

1、定點表示:必須有小數點。

例如:0.123, .123, 123.0。

2、指數表示:e或e之前必須有數字,指數必須為整數。

例如:12.3e3 ,123e2, 1.23e4。

注意:浮點數常量預設為double型別,如果浮點數常量表示float型別,在末尾新增小寫的f或者大寫的f,表示此常量為單精度浮點常量。

關於上述提到的定點表示和數的浮點表示

1、浮點型 float-point

float/double,都屬於浮點型表示。

2、定點型 fixed-point

例如,以一個位元組表示小數,小數點定在5.3位置,高5位表示整數,低3位表示小數。

11001001

加上小數點之就是11001.001即整數部分為11001,小數部分為001

轉換一下

整數部分 11001 = 25

小數部分 001 = 1 (分子),分母是1000(8),所以就是1/8

最終此小數表示的是 25 + 1/8

也就是說,存0/8, 1/8, 2/8, ..., 7/8 共八個檔,表示精度為1/8

可見,定點型小數的值取決於你把小數點定在**。

3、數的定點表示:

小數點按照約定的形式給出。在計算機裡面沒有專門的硬體用來表示小數點, 所謂的小數點都是計算機體系設計人員按照約點的形式給出的。

按照約定的方式, 可以將計算機分為兩種:一種是小數點在數符後面數值前面, 一種是數值後面。

4、浮點表示

最早的計算機只有兩種表示方式:小數定點機和整數定點機。如果計算很大的數值時需要程式設計師手動調節小數點的位置程式設計困難。

數的表示範圍很小, 為了表示相差很大的資料, 往往需要很大的機器字長。

資料利用率不高, 用很大的機器字長時, 有很多位都是 0 。

5、高精度小數

#include

void main()

a=a%b*10;

printf("%d",a/b);

cnt++;}}

11樓:小咖影屋

c語言中用於描述小數的資料型別是float和double,float型別表示單精度浮點數,double表示雙精度浮點數。

c語言中浮點數常量有兩種表示方式:

1、定點表示:(必須有小數點) 如:0.

123, .123, 123.0。

2、指數表示:(e或e之前必須有數字,指數必須為整數)如:12.

3e3 ,123e2, 1.23e4。錯誤的寫法:

e-5 ,1.2e-3.5,e3。

注意:浮點數常量預設為double型別,如果浮點數常量表示float型別,請在末尾新增小寫的f或者大寫的f,表示此常量為單精度浮點常量。

12樓:匿名使用者

4.2用c語言表示

:double d = 4.2。c語言中用於描述小數的資料型別是float和double,float型別表示單精度浮點數,double表示雙精度浮點數。

1、float:

float 資料型別用於儲存單精度浮點數或雙精度浮點數。浮點型別的單精度值具有 4 個位元組,包括一個符號位、一個 8 位 excess-127 二進位制指數和一個 23 位尾數。

2、double:

double(雙精度浮點數)使用 64 位(8位元組) 來儲存一個浮點數。 它可以表示十進位制的15或16位有效數字。

擴充套件資料

(1) 浮點型與整型

將浮點數(單雙精度)轉換為整數時,將捨棄浮點數的小數部分, 只保留整數部分。將整型值賦給浮點型變數,數值不變,只將形式改為浮點形式, 即小數點後帶若干個0。注意:

賦值時的型別轉換實際上是強制的。

(2) 單、雙精度浮點型

由於c語言中的浮點值總是用雙精度表示的,所以float 型資料只是在尾部加0延長為double型資料參加運算,然後直接賦值。double型資料轉換為float型時,通過截尾數來實現,截斷前要進行四捨五入操作。

13樓:

我想你的意思是這樣的,a變數為浮點型資料(4.2),想得知其小數部分。

不知道是不是呢?

如果是的話,那麼:

float b = a-(int)(a);

c語言中如何保留一位小數點

14樓:雙魚貝貝

採納率:52%12級2015.05.17

可以通過printf函式中的輸出格式說明符來實現保留一位小數點。回

具體實現方法見答下例:

float a = 3.14159;

printf("%.1f", a);  // 輸出結果為3.1

更一般的形式如下:

printf("%x.yf", a); // 其中x, y都是常量,a是待輸出的變數。

// 對於變數a的整數部分輸出,如果a的整數部分不足x位,則在前面補空格,若大於x位,則按實際位數輸出

// 對於變數a的小數部分輸出,如果a的小數部分不足x位,則在後面補0,若大於x位,則按四捨五入準則輸出y位小數

一鍵還原類軟體的備份檔案。使用ghost explorer軟體開啟,可以檢視該檔案的內容。此檔案不可刪除!刪除了以後就無法恢復系統了。

15樓:a羅網天下

可以通過printf函式中的復輸出制

格式說明符來實現保留一位小數點,要保留一位小數就用printf("%.1f",x),例子如程式中給出那樣。

例子如下:

直接編譯,程式輸出結果如下圖所示:

計算機C語言中小於等於是還是,計算機C語言中小於等於是還是線上等,謝謝

在所bai有的c語言中,包括微控制器duc語言,均是用 來表示 zhi小於等於的。dao c語言是一門通用計算機編內程語言,應用廣泛。容c語言的設計目標是提供一種能以簡易的方式編譯 處理低階儲存器 產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。儘管c語言提供了許多低階處理的功能,但仍...

整數和小數在計算機語言中的區別,大學計算機C語言程式設計中int和float有什麼區別線上等,謝謝

可以用floor 函式來判斷,它將返回引數的整數部分,所以 include double x if floor x x puts 是一個專整數屬 else puts 是一個小數 計算機是怎麼區別定點小數和定點整數的?前面的,ieee754是處理浮點數的。所謂定 點表示法,是指在計算機中所有數的小數點...

計算機2級C語言解題

swap1 a,a 1 呼叫下面的函式void swap1 int c0,int c1 這裡將a,a 1的值傳給了c0,c1,是實參傳給形參,但是當執行完這個函式後,並不會將形參的值再傳給實參,所以a的值是不會變的。當時a所指地址裡面的內容卻改變了。a 1是陣列a的前一個地址,這裡不管你傳什麼都不會...