在我的程序中,用户输入他在输出中需要的小数位数。我将此输入保存为deci。如何将此变量 deci 用作精度修改器?
样品: 输入一个数字:23.6788766 输入小数位数:2 产量:23.67
答案 0 :(得分:13)
如果是C,你可以这样做:
float floatnumbervalue = 42.3456;
int numberofdecimals = 2;
printf("%.*f", numberofdecimals, floatnumbervalue);
答案 1 :(得分:3)
在C中,例如将6位数的默认精度更改为8:
int precision = 8;
printf("%.*f\n", precision, 1.23456789);
precision参数必须是int
类型。
答案 2 :(得分:2)
您可以使用*修饰符,如下面的维基百科示例所述:
printf(“%* d”,5,10)将导致打印“10”,总宽度为5个字符,并且将产生printf(“%。* s”,3,“abcdef”)在“abc”中打印。