关于#c语言#的问题:运行结果及报错内容

问题遇到的现象和发生背景

为什么运行不了呢?

用代码块
#include
int main()
{
    void oxxo(int *a,int m);
    int a[20];
    int i,m=0;
    for(i=0;a[i]!='\0';i++)
    {
        scanf("%d",&a[i]);
        m++;
    }
    oxxo(a,m);
    for(i=0;iprintf("%d",a[i]);
    printf("\n");
    return 0;
}
void oxxo(int *a,int m)
{
    int i,j,temp;
    for(i=0,j=m;i2;i++,j--)
    {
        temp=*(a+i);
        *(a+i)=*(a+j);
        *(a+j)=temp;
    }
}

运行结果及报错内容

执行不了

我想要达到的结果

将n个元素输入时的逆序排列,用函数实现。

for(i=0;a[i]!='\0';i++)这啥意思?你要求的输入结束标志是输入整数0???
for(i=0,j=m;i<m/2;i++,j--) 这里应该是j=m-1,这是下标最大值。m是有效整数的数量

之前是想要它按回车结束的来着,然后额就写了a[i]!='\0',现在发现它是字符串结束标志,那这样的话是首先必须要输入确定m吗?