要注意m<n的情况,刚开始Wrong Answer了,还以为是数值范围的问题,后来看论坛才知道要考虑m和n的大小关系。。。 提交的时候,有一行注释,居然报编译错误,晕死。。。 #include <stdio.h> int main() { unsigned int m,n,x,y,temp; while( scanf("%d%d",&m,&n)!=EOF ) { if(m>n) { temp=m; m=n; n=temp; } x=0,y=0; for(;m<=n;m++) { if(m%2 == 0) x += (m*m); else y += (m*m*m); } printf("%d %d/n",x,y); } return 0; }