有这样一个问题:怎么实现输入一个整数 n,然后显示某个小数点 n 位形式吗
然后我尝试了一下
#include <stdio.h>
int main()
{
int a=0;
float m=1.234567;
scanf("%d",&a);
printf("%.af\n",m);
return 0;
}
然后不负众望地报错了
查书发现
format 标签属性是 %[flags][width][.precision][length]specifier
- 其中,不确定的 [width] 或 [.precision] 可以将其中的数值用 “*” 代替。
- 而该值将被认为未指定,但是会作为附加整数值参数放置于要被格式化的参数之前。
所以修改一下程序
#include <stdio.h>
int main()
{
int a=0;
float m=1.234567;
scanf("%d",&a);
printf("%.*f\n",a,m);
return 0;
}
然后就正常运作了