浮动的C printf格式

时间:2016-01-30 00:33:41

标签: c

我尝试了以下代码

[HttpPost]
    public ActionResult GuardarDocumento(clsDocumentoEmpleadoModel documento)
    {
        try
        {
            if (Request.Files.Count > 0)
            {
                clsEmpleadoBLL bll = new clsEmpleadoBLL();
                bll.PostedFile = Request.Files[0];
                documento.Archivo_emd = Request.Files[0].FileName;
                bll.AddDocument(documento);
            }
            else
            {
                return Json(new { success = false, message = "No ha seleccionado ningún archivo." });
            }
        }
        catch (Exception ex)
        {
            GENException.Write(ex, "EmpleadoController.GuardarDocumento");
            return Json(new { success = false, message = string.Format("Error: {0}", ex.Message) });
        }
        return Json(new { success = true, message = "Documento Guardado Correctamente." });
    }

我希望结果如下:

int main()
{
    float a = 1.0, b = 25.16;
    printf("%2.1f\n", a);
    printf("%2.1f\n", b);
}
而是显示:

 1.0
25.2

为什么不排队?

2 个答案:

答案 0 :(得分:2)

格式字符串中的第一个数字是最小字段宽度,其中包括所有字符,包括小数点。在您的情况下,字段宽度需要至少为4才能排列小数点。

所以你想要

int main( void )
{
    float a = 1.0, b = 25.16;
    printf("%4.1f\n", a);
    printf("%4.1f\n", b);
}

答案 1 :(得分:0)

尝试

printf("%4.1f\n", a);

而不是

printf("%2.1f\n", a);

<强>语法

  

%3.2f(打印为浮点数至少3宽,精度为2)