gpt4 book ai didi

c - 如何让用户决定他们想要在 float 中打印多少位小数?

转载 作者:行者123 更新时间:2023-12-01 22:20:39 25 4
gpt4 key购买 nike

我如何制作一个程序,让用户可以选择他们希望在浮点值中打印多少个小数位?

例如下面的代码

#include <stdio.h>
int main(){
float x;
x = 0.67183377;
printf("%.2f\n", x);
}

会给我们 0.67 的输出。但是,如果用户想要查看完整的数字,或者最多到小数点后第四位,该怎么办?他们会怎么做?

最佳答案

参见 printf()了解详情。使用:

printf("%.*f\n", n, x);

其中 n 是一个 int,它包含要打印的小数位数。请注意,float 只能容纳大约 6-7 位十进制数字;示例中的第 8 个在很大程度上是无关紧要的。

#include <stdio.h>

int main(void)
{
float x = 0.67183377;
for (int n = 0; n < 10; n++)
printf("%.*f\n", n, x);
return(0);
}

示例输出:

1
0.7
0.67
0.672
0.6718
0.67183
0.671834
0.6718338
0.67183375
0.671833754

在将值传递给 printf() 之前,该值会转换为 double,因为所有可变参数函数都会发生这种情况。当 x 更改为 double 时,输出为:

1
0.7
0.67
0.672
0.6718
0.67183
0.671834
0.6718338
0.67183377
0.671833770

关于c - 如何让用户决定他们想要在 float 中打印多少位小数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40335898/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com