Online Compiler C

#include <stdio.h> int main() { float n; float cymma = 0; scanf("%f", &n); for(float i = 1; i < n*10; i++){ cymma+=i*i; } printf("%.1f", cymma/100); }
这段代码试图计算从1到n的整数平方和,但实现方式有误。它用浮点数作为循环变量,并乘以10来模拟循环次数,最后除以100,这会导致结果不准确。

- 循环条件 `i < n*10` 和步长 `i++` 在浮点数上可能产生精度问题,且当n不是整数时,循环次数会出错。应该用整数循环变量,范围从1到n。
- 变量 `cymma` 存储的是平方和,但最后除以100没有数学依据。平方和本身就是整数,直接输出即可,不需要额外缩放。