1. 输出⼩数时,有时希望限定⼩数的位数,举例来说,希望⼩数点后⾯只保留两位,占位符可以写成%.2f 。
2. // 输出 Number is 0.50
#include <stdio.h>
int main()
{
printf("Number is %.2f\n", 0.5);
return 0;
}
3. 上⾯⽰例中,如果希望⼩数点后⾯输出3位( 0.500 ),占位符就要写成%.3f 。
4. 这种写法可以与限定宽度占位符,结合使⽤。
5. // 输出为 " 0.50"
#include <stdio.h>
int main()
{
printf("%6.2f\n", 0.5);
return 0;
}
6. 上⾯⽰例中,%6.2f 表⽰输出字符串最⼩宽度为6,⼩数位数为2,所以,输出字符串的头部有两个空格。
7. 另外,最⼩宽度和⼩数位数这两个限定值,都可以⽤ * 代替,通过 printf() 的参数传⼊。
8. #include <stdio.h>
int main()
{
printf("%*.*f\n", 6, 2, 0.5);// 等同于printf("%6.2f\n", 0.5);
return 0;
}
9. 上⾯⽰例中, %*.*f 的两个星号通过 printf() 的两个参数6和2传⼊。