关于数组的问题,如何解决?

请问一下这个为什么好像传不进数组,大小也不对?


#include<stdio.h>

int main()
{
    int num=0;
    int i=0;
    int arr[]={0};
    scanf("%d",&num);
    while(num)
    {
        printf("%d ",(num%10));
        arr[i]=num%10;
        i++;
        num=num/10;
    }
    printf("%d ",sizeof(arr));
    int right=sizeof(arr)/sizeof(arr[0])-1;
    while(right>=0)
    {
        printf("%d ",arr[right]);
        right--;
    }
    return 0;
}

修改如下:

 
#include<stdio.h>
 
int main()
{
    int num=0;
    int i=0;
    int arr[10]={0};
    scanf("%d",&num);
    while(num)
    {
        arr[i]=num%10;
        i++;
        num=num/10;
    }
    
    int right=i-1;
    while(right>=0)
    {
        printf("%d ",arr[right]);
        right--;
    }
    return 0;
}