c - 速率不起作用,它总是输出 0.000

标签 c floating-point

这是我的代码。

 float total,rate;        
 rate = score / 25;       
 printf("Total: %f", rate);

但这不起作用;它始终输出 0.000。你能帮忙吗?

最佳答案

我在这里冒险说你已经将分数声明为整数。 int 除以 int 的结果始终是 int。您可以通过以下任一方法解决此问题:

  1. score声明为float
  2. 将其转换为(float)score
  3. 将其乘以 float rate = Score * 1.0f/25
  4. 将 25 更改为 25.0f

关于c - 速率不起作用,它总是输出 0.000,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34973513/

相关文章:

c++ - 如何将 C++ 文件链接到 C 程序?

c - 不使用 * operator hack-y 方式获取产品

c# - 为什么这个指定的转换无效??

c - 如何用C生成随机字母(大写字母)并保存到文本文件中?

c - 在 C 中打印用循环填充的字符串?

c - C实现链表的各种错误

c++ - 可以从 double 分配给 double 的 static_cast<float> 进行优化吗?

c# - 浮点运算 - Double 类型的模运算符

JavaScript:算术运算失败

java - 如何知道浮点值是否大于Integer.MAX_VALUE?