//数组是先存高位再往低位存的,如1011,a[0]=1,a[1]=0,a[2]=1,a[3]=1;
//a[]是被除数,n是除数
int divide(int a[],int l)
{
int q,p=0;
q=a[p++];
while(p<l) // l是数的位数
{
while(q<n) //取a[]的高位直到取出的数高于或等于n
{
q=q*10+a[p++];
if(p>=l)
break;
}
if(q>=n)
q%=n; //取余之后保存q留作后面运算
}
q%=n; //特殊情况如果位数为1
if(q==0)
return 1; //成功返回1
return 0;
}