C语言,输出格式,小数点

怎么做的啊

img

 以下程序的运行结果是                                                                                                      
     main()
            printf("%12.5f\n"123.1234567);                                              答案
                                                                                                            123,12346
                                                                                                            123,123457
            printf"%12f\n",123.1234567);
                                                                                                             00012345
           printf"%12.8d\n"12345);
                                                                                                             abcdefgh
          printf("%12.8s\n"."abcdefghi j");

%m.nf 表示小数点后只显示地取n位,总共占m位,不够就左边隐式得补空格。所以前两个正确。
%12.8d 即至少显示8位整型,但你这里不够所以就显示地补0,一直到够8位,然后不够12位就隐式地左边补空格。
%12.8 s 和第一个类似,只显示地取8位,总共占12位,不够左边隐式地补空格,所以输出是 abcdefgh

您如果不会的,说明对c中的格式化输出不是很理解。可以在去学习一下回来再做这个题就简单了。
c中的关于printf输出的详解:
https://blog.csdn.net/weixin_54194783/article/details/124413104

img