我的程序: /******************************************************************** 程序名:大整数加法 作者:许文发 时间:2009-11-28 ********************************************************************/ #include
#include
#include
//两个数之和,结果存在sum中(以逆序存放) int add(int num1[],int n1,int num2[],int n2,int sum[]) { int i=0; int temp; while(n1!=0 && n2!=0) { temp=num1[--n1]+num2[--n2]; if(temp>9) { temp-=10; sum[i+1]=1; } sum[i]+=temp; if(sum[i]>9) { sum[i]=sum[i]-10; sum[i+1]+=1; } i++; } while(n1!=0) { sum[i++]+=num1[--n1]; } while(n2!=0) { sum[i++]+=num2[--n2]; } if(sum[i]!=0) i++; return i; } void mywrite(int sum[],int n) { FILE *pt; pt=fopen("output.txt","w"); for(int i=n-1;i>=0;i--) fprintf(pt,"%d",sum[i]); fclose(pt); } void main() { FILE *pt; int *num1,*num2,*sum; int n1,n2,n3,i; char ch; if(NULL==(pt=fopen("input.txt","r"))) { cout<<"can't open input.txt"<
=n2?n3=n1+1:n3=n2+1; sum=new int[n3]; memset(num1,0,n1*sizeof(int)); memset(num2,0,n1*sizeof(int)); memset(sum,0,n3*sizeof(int)); rewind(pt); for(i=0;i
大整数加法
最新推荐文章于 2023-03-11 17:55:22 发布