C 乘法和除法

标签 c division multiplication

我正在为学校运行一个程序,遇到一个简单的数学问题,C 无法正确计算。我只是想将我的输出除以一个数字,它返回原始数字。

int main(void)
{
    float fcost = 599;
    float shipt =  (fcost / 120);
    shipt = shipt * 120;

    printf("%4.0f", shipt);
    return 0;
}

最佳答案

根据评论中的说明,您希望除法结果向下舍入。

为此,您应该使用 int 而不是 float,以便执行整数除法(截断小数部分)而不是浮点除法(这会截断小数部分)保留小数部分):

int fcost = 599;
int shipt =  (fcost / 120);
shipt *=120;

printf("%d", shipt);

关于C 乘法和除法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39598062/

相关文章:

python - 如何将列表中的两个相邻元素相乘?

SQL 除法精度

c++ - 可以在 Knuth 堆上进行碎片整理吗?

c - 在C中扩展动态内存的最佳方法

c - 如何从用户输入中提取偶数,并在C程序中将它们组合成一个新数字

c++ - cout没有输出?

python - 如果我将元素放入括号中,则乘法为零(python)

java - 为什么这个 Java 表达式不将最终值转换为 long 类型?

java - 从 int 产品到 long 的隐式转换?

c - C 中是否有替代 strtoull() 函数的方法?