#include <stdio.h>
int main() {
long long int a,b,sum=0;
scanf("%lld%lld",&a,&b);
if(a>b){
long long int temp;
temp=a;
a=b;
b=temp;
}
for(long long int i=a;i<=b;i++){
sum+=a*a+b*b;
}
printf("%lld",sum);
return 0;
}
这段代码的目的是计算从 a 到 b 之间所有整数的平方和,但实现有误。
代码先交换 a 和 b 确保 a <= b,然后循环从 a 到 b,但每次循环累加的是 a*a + b*b,而不是当前循环变量 i 的平方。这导致结果错误,且循环次数越多,错误越大。
- 检查循环体内累加的内容:应该使用循环变量 i 的平方,而不是固定的 a 和 b 的平方。
- 注意变量 sum 的初始化和累加逻辑是否正确反映了题目要求。