Online Compiler C

#include <stdio.h> int main() { int price,items,discount; float total_price,total_discount scanf("%d%d%d",&price,&items,&discount); total_price=price*items; total_discount=(price/100)*discount; total_price=total_price-total_discount; printf("C=%.2f\n",total_price); return 0; }
这段代码试图计算商品总价并应用折扣,但存在几个问题。

- 第6行缺少分号,导致编译错误。
- 折扣计算逻辑有误:`(price/100)*discount` 中 `price/100` 是整数除法,会丢失小数部分,导致折扣金额计算不准确。
- 变量 `total_discount` 未初始化,且折扣计算应基于总价而非单价。

- 检查第6行末尾是否遗漏了分号。
- 思考折扣金额的正确计算方式:折扣应基于总价(`price*items`)还是单价?整数除法会如何影响结果?