1樓:匿名使用者
直接用"%g"就行了!
2樓:匿名使用者
這樣寫試試,好久沒寫c了,忘得差不多了。嘿嘿
printf("%.0f",x);
c語言程式設計中怎麼自動去掉浮點數小數點後沒用的0。
3樓:會飛的小兔子
#include
int main()
擴充套件資料
c語言浮點數
浮點數的值等於尾數乘以 2^x。讀者應該注意,上圖是二進位制分數,因此 0.1表示 1/2。
為了方便理解,我們可以將其與十進位制的小數對應起來:十進位制的 0.1 等於 1*10^-1,所以二進位制的 0.
1 等於1*2^-1,也即 1/2。
「尾數+指數」模式儲存浮點數可能有一點問題,例如:2x10^-1=0.2x10^0=0.
02x10^1,依此類推。同樣一個數字可能有多種「尾數+指數」的表示方法,而同時兼顧多種表示方法勢必會造成巨大的浪費。
4樓:匿名使用者
可以通過%.xf或者%.xlf來限制,其中x是一個整數;
如果保留一位小數x 為1,兩位為2;
以此類推;
注意%.xf的x的值不能大於7,由於float型別的精確度只有小數點後7位;
%.xlf的x的值不能大於15,double型別的精確度只有小數點後15為;
通過限制小數點的位數,去掉多餘的0;。
c語言,將double資料輸出時,如何去掉小數位多餘的0?
5樓:匿名使用者
printf("%g\n", a ); //這樣試一下,是不是你想要的
6樓:匿名使用者
double a = 1.001;
printf("%lf",a);//會輸出1.001000,怎樣才能輸出1.001
通過在%與lf之間加上.d(此處的d為十進位制正整數)來控制輸出小數的位數,以此來控制輸出資料的精度,
比如:%.3lf表示輸出的資料有3位小數
%.5lf表示輸出的資料有5位小數
%lf預設輸出6位小數 ,所以本來a=1.001,結果輸出1.001000
7樓:不能說的_祕密
可以用%2.3lf,點3代表著小數為保留3位,前面的2可以隨便。
8樓:於是我呵呵
printf("%.3lf", a);
用c語言浮點輸出時,如何讓小數點後沒用的0不顯示。
9樓:匿名使用者
用%g格式符就可以了
例如:float f=3.14;printf("%g",f);
10樓:匿名使用者
printf("%.0lf", 2.344); //輸出為2 double型別
printf("%.0f", 2.344); //同上. float型別
c中如何使輸出的值小數點後最末位0捨去?
11樓:匿名使用者
如果你僅僅是要最後一個0去掉,很麻煩。不是的話,就用g格式。
g格式:自動選f格式或e格式中較短的一種輸出,且不輸出無意義的零。
printf("%g\n",a);
僅僅要去掉最後一個0,方法樓上有**了。麻煩 - -
12樓:匿名使用者
#include
int main()
13樓:我有赤兔
float f=3.141592653,x;
x=f%1;// x就是小數點後面的東東
char a=(char)f; /把浮點數轉成字串int i=2;/從a[2]開始才是小數的第一位char b=a[i];
while(b!='0')// 每個字元逐個檢查,直到發現0printf("%.(i-2)",f);//之所以-2是因為字串的第一個字元是 0 第二個字元是 。
這個辦法真的很麻煩,可是你的要求也夠麻煩的。。。。
14樓:匿名使用者
float f = 3.123456
printf("%.1",f);
結果為3.1
printf("%.5",f);
結果為3.12346
c語言怎麼去掉輸出的0
15樓:zz迎風
把 printf("%d",n%10); 換成 if(n%10!=0) printf("%d",n%10);
c語言 去掉小數點後面無效0
16樓:聽不清啊
printf("bmi:%g\n",c); -------不是%g¥n
printf("標準體重:%g\n",d);
這是沒有問題的。是你的程式中有錯,程式沒有編譯成功,仍舊執行舊的程式造成的。
17樓:匿名使用者
%x.yf x是整個數的位數,y是小數點後的位數也就是說你要0.20的話
float a=0.2;
printf("%.2f",a);
18樓:匿名使用者
printf 後輸出 %g就可以啦
如何使得c程式裡面printf函式對於浮點數不顯示後面的一大串0?
19樓:匿名使用者
printf("%g \n",float_value);
20樓:匿名使用者
%m.nf表示總長為m,小數點後有n位的實數
總長不足m位左邊補0
21樓:匿名使用者
printf("%.2f",1.55000); // %.2f就是2位小數的意思 %.3f就是3位....
22樓:楊洋
加%0.1f 就是printf("%0.1f",x);
23樓:張老叉
printf(「%0.lf」,a);
c語言 去掉小數點後面的數
24樓:匿名使用者
f=123.123
使用強制轉換命令:(int)f;
注意:在轉換的時候,前面的轉換型一定要打括號,否則不起作用。
25樓:三號床鋪的四哥
有兩種方法:
使用函式:
#include
void main()
printf("%d\n",a); }
2.使用強制轉換命令:(int)f;
注意:在轉換的時候,前面的轉換型一定要打括號,否則不起作用。
26樓:匿名使用者
太簡單了
#include"stdio.h"
main()
27樓:匿名使用者
//無小數的浮點數
#include
void main()
28樓:匿名使用者
#include
void main()
29樓:匿名使用者
double a=123.123;
printf("%d",int(a));
c語言中printf直接列印兩個函式介面的返回值問題
輸出應該是sunday monday 第一行 是定義一個靜態的指標字串!第3行是定義一個靜態函式 strcpy buf,msg index 函式的意思吧msg index 複製到buf字串裡,然後現在計入main函式,輸出 計入函式get day傳入引數0進入函式就是msg指標陣列msg第一個引數是...
c語言中,temp是什麼函式,C語言中,temp是什麼函式
在c語言中,temp沒有特別的含義,既不是關鍵字也不是庫函式。可能是程式設計人員自版定義的權一個變數或函式,通常用來表示一個臨時變數,來自 臨時 的英文單詞temporary。舉例如下 int temp 定義一個int型別的變數,變數名為temp double temp 定義一個double型別的變...
c語言中的main函式引數作用,C語言中的main函式引數作用
在呼叫可執行程式時,可以通過main函式的引數將命令列的呼叫引數傳遞給main函式。事實上,main 函式既可以是無參函式,也可以是有參的函式。對於有參的形式來說,就需要向其傳遞引數。從函式引數的形式上看,包含一個整型和一個指向字元指標的指標。當一個c的源程式經過編譯 連結後,會生成副檔名為.exe...