gpt4 book ai didi

c - 在 C 中打印一个非常大的整数

转载 作者:太空宇宙 更新时间:2023-11-04 00:19:03 25 4
gpt4 key购买 nike

我在 float 变量中存储了一个非常大的数字,但是当我打印它时,我只想显示整数部分,小数点后不显示任何内容。

对于 int 或 long 范围内的数字,我会进行强制转换,但这对我没有帮助,因为我要打印的数字对于 int 或 long 来说太长了。

我看过这个解释:http://www.cprogramming.com/tutorial/printf-format-strings.html但我还没有成功解决这个问题。

这是我的代码和我尝试进行转换的尝试:

double sum=552074001368;
long long_sum;
long_sum = (long)(sum); //int casting for double "add"
if(sum>=0) printf("=\n%ld\n",long_sum);
else printf("=\n%ld\n",-long_sum);

我不想使用像 printf("%15f") 这样的特定精度,因为这个变量会波动,有时会很短,比如 4 位数字。

最佳答案

使用精度修饰符.0 并打印数字的floor:

printf("%.0f\n", floor(sum));

(或者 absfloor,如果您只想要幅度,如您的示例代码所示。)

关于c - 在 C 中打印一个非常大的整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10337284/

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