在线编译器 C

#include <stdio.h> int main() { int cost,num,p; float C; scanf("%d%d%d",&cost,&num,&p); C=num*cost*(100-p)/100; printf("C=%.2f",C); return 0; }
这段代码的功能是:输入商品单价、数量和折扣百分比,计算折扣后的总价并输出,结果保留两位小数。

- 问题在于整数除法。表达式 `(100-p)/100` 中,如果 `(100-p)` 小于100,结果会是0,导致总价计算错误。
- 需要确保除法运算得到浮点数结果,可以考虑将其中一个操作数改为浮点数类型。