请问一下输入一组数 遇到-1结束,我应该补在哪个位置

代码
#include<stdio.h>
int fun(int a[],int n)
{
while (a[n]>=10)
{
a[n]/=10;
}
return a[n];
}

int main()
{
int a[5],i,j,s=0;
printf("enter:");
for(i=0;i<5;i++)
scanf("%d",&a[i]);
for(i=0;i<5;i++)
{j=fun(a,i);
s=s*10+j;}
printf("%d",s);
return 0;
}
比如我输入 464 90 0 27 -1,取每个数最高位构成一个新的数 4902 ,遇到-1结束 ,那这个条件应该写在哪个位置合适 要怎么写

循环输入就在循环里结束,输入一个数,判断一下