c語言如何判斷小數的小數點後有幾位

2021-08-04 10:35:22 字數 3573 閱讀 3753

1樓:林剛祝

這是c語言中的“右移運算子”。一般情況下,他是按位操作。

特點:1.雙目運算子,就像+、-、*、/一樣,格式為(數1)>>(數2)

2.數1是被運算元,如被減數、被除數等;數2是右移位數。

3.優先順序低,結合性:從左向右運算

如:8>>1=?表示將被移數向右移動1位

如何操作?

1.化十進位制數為(注意了)對應的二進位制數,對應指格式對應2.通通右移,不足補0

3.化為十進位制數

舉例:short int a=8;a=a>>1;

1.a=0 000 1000

2.右移一位後:a= 0 000 100

3.補0:a=0 000 0100

4.化為十進位制數:a=4

舉例:int a=8;a=a>>1;

1.a=0 000 0000 0000 10002.右移一位後:

a= 0 000 0000 0000 1003.補0:a=0 000 0000 0000 01004.

化為十進位制數:a=4

2樓:匿名使用者

如果按%s輸入,也就是按字串格式輸入,先找到小數點的位置,然後統計下小數點後數字的長度。可以一試。

3樓:風若遠去何人留

除非是從輸入的時候就存成字串, 然後判斷小數點後的位數。

一旦存成浮點型變數,不管是double還是float都是近似值,

這時就無法準確判斷有幾位了。

c語言如何判斷一個小數的小數點後有幾位

4樓:匿名使用者

利用整數的截斷效果,將資料小數部分單取出來,乘以10後取整,與原數比較,若不等,則判斷大於小數點後1位,依此計算直到相等為止。

在取整時進行小數點後1位四捨五入可部分防止二進位制浮點數與真實資料間的舍入誤差問題。

c語言中怎麼判斷一個數是否含有小數點?!

5樓:匿名使用者

如果是數值的話bai,那麼將原

du始的數值減zhi去取整後的數值如果dao大於0就表示有小數 if ((n - (int)n) > 0) return = true; 如果是專字串的話,有兩種方屬法,一種是將字串轉換為數值後用上面說的方法判斷,另一種是逐字判斷是否包含字元小數點“.”

6樓:呃

情況一:如果

n減去它的整數部分不等於0,那麼n有小數

。如果等於零說明n是整數。回

if(n=int(n)!=0)

return turn;

else

return false;

此種方法有弊端答如1.00有小數點但用上述方法會有錯誤,所以上述方法準確來說是用來判斷是否有小數的。

情況二:假設你要判斷一個數為n,可先把n轉換為字串型別char,再遍歷每個字元是否有小數點。

int n;

char(s)=n;

int cheak(char*s)

return 0;}

c語言裡,double型別的資料可以精確到小數點後幾位?

7樓:匿名使用者

"%lf"預設只顯示6位小數,如果想顯示更多請指定:例如"%0.16lf"

精度位不夠自動四捨五入,沒辦法去掉。只有增加精度顯示

8樓:匿名使用者

十進位制的15或16位有效數字,因此精確到小數點後最多有15或16位。

9樓:匿名使用者

這個我記得跟系統的位數有關吧,還有你是以lf 的格式列印出來的,這2個一樣嗎?

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

10樓:雙魚貝貝

採納率: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軟體開啟,可以檢視該檔案的內容。此檔案不可刪除!刪除了以後就無法恢復系統了。

11樓:a羅網天下

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

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

例子如下:

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

12樓:匿名使用者

可以通過printf函式bai中的輸出格式說明du符來實現保留zhi一位小dao

數點,要保留一位小數就用

回printf("%.1f",x),例子如程式中給答出那樣。直接編譯,程式輸出結果如下圖所示:

擴充套件資料:1.printf("%3.

0f",floatnum):不保留小數說明:%3.

0f表明待列印的浮點數(floatnum)至少佔3個字元寬,且不帶小數點和小數部分,整數部分至少佔3個位寬;注意:這裡的3只代表整數部分至少佔3位,捨棄小數點和小數點後面的部分。2.

printf("%6.2f".floatnum):

保留兩位小數說明:%6.2f 表明待列印的數(floatnum)至少佔6個字元寬度(包括兩位小數和一個小數點),且小數點後面有2位小數,小數點佔一位,所以整數部分至少佔3位。

注意:這裡的6是待列印的數至少佔據的字元寬度,包括兩位小數(如果小數不夠兩位用0補位,例如100.1列印出來為100.

10)和一個小數點,所以整數部分至少佔3個字元寬度。

13樓:四甫

給小學生講c++求平均數及保留小數點&&賦值運算

14樓:天雲一號

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

具體實現方法見zhi下dao例:

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位小數

15樓:匿名使用者

printf("%.1f",x)

16樓:匿名使用者

printf("%.1f",x);

好像是這樣

c語言printf保留小數點前2位

舉個例子 include int main printf 2.2f i c語言中如何保留一位小數點 採納率 52 12級2015.05.17 可以通過printf函式中的輸出格式說明符來實現保留一位小數點。回 具體實現方法見答下例 float a 3.14159 printf 1f a 輸出結果為3...

什麼叫小數點,小數點的意義是什麼

小數點是一個數學符號,寫作 用於在十進位制中隔開整數部分和小數部分。小數點作用很大,不起眼的差錯會造成極為嚴重的後果。小數點的意義是什麼?小數意義裡面的意義,就是指的這個小數的含義是什麼,一般是指該小數是由多少個小樹單位組成,比如 小數4.25的含義是 表示把1平均分成100份,取這樣的425份是4...

小數的由來小數點的由來

公元3世紀,也就是1600多年前,我國偉大的數學家劉徽就提出了小數。最初,人們表示小數只是用文字,直到了13世紀,才有人用低一格,如8.23記做,左邊的表示整數部分,右下方表示小數部分。古代,還有人記小數是將小數部分的各個數字用圓圈圈起來,例如 1.5記做1 這麼一圈,就把整數部分和小數部分分開來了...