C语言如何控制输出精度?

一、问题

对于⼀些特殊的项⽬,如⾦融等,对数据的精度都是有要求的,那么又该如何控制精度呢?

二、解答

说到C语⾔中的精度,就不得不说⼀下精度修饰符" . "(其后⾯跟⼗进制整数)。

cpp 复制代码
#include <stdio.h>
int main()
{
    float i = 123456;
    double j = 1.23456;
    printf("i=%.5f\n", i);
    printf("j=%.3f\n", j);
    printf("j=%05.2f\n", j);
    return 0;
}

//如果输出的是整数,则输出最⼩位数,若输出数的位数⼩于该值,则添加前置 0;
//如果输出的是⼩数,则表示⼩数的位数;
//如果输出的是字符,则表示输出字符的个数,若实际位数⼤于所定义的精度数,则截去超长的部分。

输出结果如下

cpp 复制代码
i=123456.00000
j=1.235
j=01.23

三、总结

对于所有的程序语⾔来说,在实现的时候都会对精度提出要求。在编写程序时,读者 ⼀定要注意这个问题。

相关推荐
释厄6234 分钟前
错误无误公理——错误正确本同源都迭代定律——逆转有价值
android·开发语言·kotlin
鶴哥只手遮天4 分钟前
OpenFOAM 源码深度剖析 · 第二季-02 燃烧与化学反应:`combustionModel`、化学求解器与 Arrhenius 反应率
算法·开源
鶴哥只手遮天4 分钟前
Gmsh 源码深度解析-第 6 章 三维体网格算法
算法·开源
鶴哥只手遮天10 分钟前
Gmsh 源码深度解析-第 3 章 脚本语言与解析器
算法·开源
鶴哥只手遮天10 分钟前
OpenFOAM 源码深度剖析 · 第二季-16 工程与工具链:Windows 交叉编译、性能剖析、数据交换与测试
算法·开源
鶴哥只手遮天10 分钟前
Gmsh 源码深度解析-第 5 章 二维曲面网格算法
算法·开源
鶴哥只手遮天13 分钟前
Gmsh 源码深度解析-第 1 章 架构总览与数据模型
算法·开源
鶴哥只手遮天13 分钟前
OpenFOAM 源码深度剖析 · 第二季-12 `coded` 系列:在字典里写 C++ 并在运行期编译
算法·开源
鶴哥只手遮天14 分钟前
OpenFOAM 源码深度剖析 · 第二季-01 多相流与 VOF:`interFoam`、界面压缩与 MULES
算法·开源
2601_9628857215 分钟前
如何用 Python计算 CR能量指标(中间意愿指标)?
开发语言·python