获取c中的数字百分比

获取c中的数字百分比,第1张

概述如何计算int的百分之几? 例如,我想从数字中得到30%,如果我将使用这个代码示例,我会得到错误的答案: int number = 250;int result = (number / 100) * 30; 结果将是60,真正的答案是75,有什么方法可以计算出来吗? 分开前乘以: int result = number * 30 / 100; 得到结果的原因是整数类型的除法产生整数结果:250/ 如何计算int的百分之几?
例如,我想从数字中得到30%,如果我将使用这个代码示例,我会得到错误的答案:
int number = 250;int result = (number / 100) * 30;

结果将是60,真正的答案是75,有什么方法可以计算出来吗?

解决方法 分开前乘以:
int result = number * 30 / 100;

得到结果的原因是整数类型的除法产生整数结果:250/100是2.如果在除法之前乘以仍然得到整数结果,但至少你没有在中间步骤中丢失数据.如果你必须处理非常大的数字,那么存在溢出int允许的范围的危险.

或者,您可以使用浮点运算,其中除法可以生成整数的分数:

int result = number * 0.30;

这可能会产生unexpected results,所以你最好只使用上面的整数.或写3.0 / 10而不是0.30.

总结

以上是内存溢出为你收集整理的获取c中的数字百分比全部内容,希望文章能够帮你解决获取c中的数字百分比所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1253044.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存