高精度除法
我写了代码,带余数,但是除下来结果不正确,余数是正确的,但是结果不正确:#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void print(int sum[],int length)
{
int i;
for(i=length-1;i>=0;i--)
printf("%d",sum[i]);
printf("\n");
}
int division(int a[],long b,int sum[],int a_length)
{
long i,temp=0,sum_length;
for(i=a_length-1;i>=0;i--)
{
temp=temp*10+a[i];
sum[i]=temp/b;
temp=temp%b;
}
sum_length=a_length;
while(sum_length>0&&sum[sum_length]==0) sum_length--;
print(sum,sum_length);
return temp;
}
int main()
{
char a[1000];
int length=0,i;
long B,mod;
int sum[1000]={0},A[1000]={0};
gets(a);
length=strlen(a);
for(i=0;i<length;i++)
A[i]=a[i]-48;
scanf("%ld",&B);
mod=division(A,B,sum,length);
printf("%ld\n",mod);
system("pause");
return 0;
}