两个大整数相加实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
if(sum>9)
{ flag=1;sum=sum%10;
else
flag=0;
L_pointer3->Element[k]=sum;
L_pointer3->Length++;
i--;j--;k++;
}
while(i>-1)
{ sum=源自文库_pointer1->Element[i]+flag;
if(sum>9)
void Reverse(SeqList*L_pointer)
{ElemTypetemp,*p,*q;
p=L_pointer->Element;
q=L_pointer->Element+L_pointer->Length-1;
while(p<=q)
{ temp=*p;
* p=* q;
* q=temp;
Show_SeqList(&List 3);
SetNull_SeqList(&List1);
SetNull_SeqList(&List2);
SetNull_SeqList(&List3);
}
实验结果
请输入两个长整数,用空格分开:
123456789234 9876543218767
10000000008001
else;
flag=0;
L_pointer3->Element[k]=sum;
L_pointer3->Length++;
j--;k++;
}
if(flag==1)
{ L_pointer3->Element[k]=1;
L_pointer3->Length++;
}
Reverse(L_pointer3);
}
p++;q--;
}
}
void main ()
{intx,i,loca;
char s[80];
SeqListList1,List2,List3;
Init_SeqList(&List1);
Init_SeqList(&List2);
Init_SeqList(&List3);
printf("请输入两个长整数,用空格分开:")
{ flag=1;sum=sum%10;}
else
flag=0;
L_pointer3->Element[k]=sum;
L_pointer3->Length++;
i--;k++;
}
while(j>-1)
{ sum=L_pointer2->Element[j]+flag;
if(sum>9)
{ flag=1;sum=sum%10; }
scanf("%s",s);
i=0;
while(s[i]!='\0')
{Insert_Last(&List1,s[i]-'0');
i++;
}
scanf("%s",s);
i=0;
while(s[i]!='\0')
{Insert_Last(&List2,s[i]-'0');
i++;
}
Add(&List1,&List2,&List3);
{inti,j,k;
char sum;
intflag;
i=L_pointer1->Length-1;
j=L_pointer2->Length-1;
k=0;
L_pointer3->Length=0;
flag=0;
while(i=0&&j>=0)
{ sum=L_pointer1->Element[i]+L_pointer2->Element[j]+flag;
计应102-13-杨艺
两个大整数的加法实验报告
实验目的
利用VC算出两个大整数的加法结果,更深入的了解加法与线性列表逆转的算法运用。
实验代码
typedefcharElemType
typedefstruct
{ElemTypeElement [MaxSize];
intLength;
}SeqList;
SeqListList;
void Add(Sqelist*L_pointer1,SeqList*L_pointer2,Seqlist*L_pointer3)
相关文档
最新文档