大数相乘的算法大家看看问题出在哪?

来源:百度知道 编辑:UC知道 时间:2024/06/24 15:08:27
#include<stdio.h>
#include<string.h>
int main()
{char c[2000],as[1000],bs[1000];
int i,j,al,bl,temp,in;
int g,p,t,r;
int h,l;
printf("please input two number:\n");
scanf("%s", as);
scanf("%s", bs);
al=strlen(as);
bl=strlen(bs);
for(i=0;i<2000;i++)
{c[i]=0;}
for(t=1;t<al;t++)
{if(as[t]==as[t-1]&&as[0]=='0')
g=0;
}
for(r=1;r<bl;r++)
{if(bs[r]==bs[r-1]&&bs[0]=='0')
p=0;
}
if(!(al==1&&as[0]=='0')&&!(bl==1&&bs[0]=='0')&&(g!=0)&&(p!=0))
{

for(j=al-1;j>=0;--j)
{ for(i=bl-1;i>=0;--i)
{ temp=(as[j]-48)*(bs[i]-48);
l=temp%10;
h=temp/10;
c[al+bl-i-j-2]+=l;
c[al+bl-i-j-1]+=h;
for(in=al+bl-i-j-2;in<2000;in++)
{ c[in]=c[in]%10;
h=c[in]/10;
if(h==0)
b

你所谓的错误是什么?我的编译器没有报错啊!你把你错误截图发上来看看,我用的是VS2005 没错啊! 我的VS2005可以满足········