鱼C论坛

 找回密码
 立即注册
查看: 2427|回复: 1

[已解决]问大佬们一个问题!!!!

[复制链接]
发表于 2019-8-14 11:52:20 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include <stdio.h>
#include <math.h>
void main()
{
        double a,b,c,disc,x1,x2,p,q;
        scanf("a=%lf,b=%lf,c=%lf",&a,&b,&c);
        disc=b*b-4*a*c;
        p=-b/(2*a);
        q=sqrt(disc)/(2*a);
        x1=p+q;
        x2=p-q;
        printf("\nx1=%5.2f\nx2=%5.2f\n",x1,x1);
}



最后一行的%5.2有啥用啊?我改成3.2,4.2都没啥变化,改成什么7.2就显示出来变长了,改成什么3.20,5.20就变得很长了,要是在小数点后多搞几位小数运行就显得巨长无比了????
最佳答案
2019-8-15 01:24:04
我的理解是:格式符 %5.2f  的意思是:输出结果最少占用5个字符,且保留2位小数
格式符控制的具体资料如下:
%[(name)][flags][width].[precision]typecode
name = 命名
flags 的值 可以有+,-,' '或0(+表示右对齐 -表示左对齐 ' '为一个空格,表示在正数的左侧填充一个空格,从而与负数对齐 0表示使用0填充)
width = 输出的宽度  5.2f的5就是宽度,代表浮点数的小数加整数最少站5个字符位置,如果不够就用空格填充
.precision =表示小数点后的精度,5.2f的2f,就是保存2为小数,4f为保留4为小数
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-8-15 01:24:04 | 显示全部楼层    本楼为最佳答案   
我的理解是:格式符 %5.2f  的意思是:输出结果最少占用5个字符,且保留2位小数
格式符控制的具体资料如下:
%[(name)][flags][width].[precision]typecode
name = 命名
flags 的值 可以有+,-,' '或0(+表示右对齐 -表示左对齐 ' '为一个空格,表示在正数的左侧填充一个空格,从而与负数对齐 0表示使用0填充)
width = 输出的宽度  5.2f的5就是宽度,代表浮点数的小数加整数最少站5个字符位置,如果不够就用空格填充
.precision =表示小数点后的精度,5.2f的2f,就是保存2为小数,4f为保留4为小数
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-13 02:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表