在线编译器 C

#include <stdio.h> int main() { int n; scanf("%d", &n); double sum = 0.0; for (int i = 10; i < n * 10; i++) { double current = i / 10.0; sum += current * current; } printf("%.1f\n", sum); return 0; }
这段代码的功能是计算从1.0到n-0.1之间所有以0.1为步长的数的平方和。例如输入3,会计算1.0² + 1.1² + 1.2² + ... + 2.9²。

- 循环变量i从10开始,每次加1,对应的小数值是i/10.0。但循环条件i < n*10导致最后一个i是n*10-1,对应的小数值是n-0.1,所以没有包含n本身。请检查题目要求是否应该包含n这个数。
- 变量sum是double类型,但printf中使用%.1f输出,这只会保留一位小数。如果题目要求更高精度或特定格式,需要调整输出格式。