int reverse( int number ){int sum=0,t,flag;if(number<0){flag=-1;number=-number;}elseflag=1;while(number!=0){sum=sum*10+number%10;number=number/10;}sum=sum*flag;}//这个在测试时无法通过//错误点:没有return----------------------------------------------------------int reverse(int number){int res = 0;while(number != 0){res = res * 10 + number % 10;number = number/10;}return res;}//这个是正确答案---------------------------------------------------------int reverse( int number ){int count=1,n,r=0,flag=1;if(number<0){flag=-1;number=-number;}n=number;while(n){count=10*count;n=n/10;}while(number){r=r+(number%10)*count;number=number/10;count=count/10;}r=r*flag;return r;}//测试时无法通过//错误点:在第一个while后count值应除以10--------------------------------------------------------注意点:1.printf("%d",-123%10);结果是:-3所以此题没有必要放flag对负号进行处理。