我想用C小數點後打印出與用戶定義的精度浮點數,就好說了,是否可以在C中的小數點後用用戶定義的精度打印浮點數?
int dec;
float no;
printf("\nEnter no of decimal places and the number ");
scanf("%d%f",&dec,&no);
然後打印數量no
與dec
小數。
我想用C小數點後打印出與用戶定義的精度浮點數,就好說了,是否可以在C中的小數點後用用戶定義的精度打印浮點數?
int dec;
float no;
printf("\nEnter no of decimal places and the number ");
scanf("%d%f",&dec,&no);
然後打印數量no
與dec
小數。
做
int dec;
float no;
printf("\nEnter no of decimal places and the number ");
scanf("%d%f",&dec,&no);
printf("%.*f",dec,no);
您可以格式化浮點數的印刷,而不是它的實際大小。
您可以在格式化浮點數上閱讀this。
爲了節省您的時間,你可以使用%F格式說明,作爲
printf("%.PRECISIONf", fvar);
其中PRECISION是你小數點後需要的位數,例如爲
int
print_float(float fvar, unsigned int precision) {
char fs[32];
sprintf(fs,"%%.%df", precision);
return printf(fs, fvar);
}
在調用程序:
print_float(2.0f, 2);
您將得到2.00的輸出。
希望這可以解決您的問題。
爲什麼發佈這個問題,如果你知道答案? –
@ChrisDodd:http://meta.stackexchange.com/a/132887 –