Online Compiler C

#include <stdio.h> int main() { int a,b,c; float X; scanf("%d%d%d",&a,&b,&c); X=(a+b+c)/3; printf("%.2f",X); return 0; }
这段代码的功能是读取三个整数,计算它们的平均值并保留两位小数输出。代码整体结构正确,但有一个常见的问题需要注意。

- 在C语言中,整数除法会直接截断小数部分。表达式 `(a+b+c)/3` 中,`a+b+c` 是整数,除以整数3的结果也是整数,小数部分会被丢弃。即使将结果赋值给 `float` 类型的 `X`,小数部分已经丢失了。你需要确保除法运算中至少有一个操作数是浮点数,才能得到小数结果。

- 可以考虑将其中一个操作数显式转换为浮点数,或者使用浮点常量(如 `3.0`)来触发浮点除法。