力扣编译器是不是有问题啊,好几次这样了,真的搞心态,整数反转的题

img


int i,j;
int b;
int need=0;
int flag=0;
int number=0;
int a[100]={};
int reverse(int x){
    if(x<0){
        x *= -1;
        flag=1;
    }
    for(i=0;x>0;i++){
        a[i]=x%10;
        x /=10;
        number++;
    }
    b=number;
    for(i=0;i<number;i++){
        for(j=b-1;j>0;j--){
            a[i] *= 10;
        }
        b--;
        need += a[i];
    }
    if(flag==1){
        need *= -1;
    }
    return need;
}

共参考:

#include <stdio.h>
int main()
{
    int n, k=0, sign = 1;
    scanf("%d", &n);
    if (n < 0)
    {
        n = -n;
        sign = -1;
    }
    while(n)
    {
        k = k * 10 + n % 10;
        n /= 10;
    }
    printf("%d", sign * k);
    return 0;
}