请帮我救救这个程序啊.谢谢
#include<iostream.h>#include<string>classaddition{ (longintnum);addition*next;~addition();};addition::addition(longintnum){num=num;}addition::~addition(){cout<<"omit"<<endl;}voidnumber1(addition*&a,longintnum1){addition*n1=newaddition(num1);n1->next=NULL;if(a==NULL)a=n1;else{a->next=n1;a=a->next;}}voidnumber2(addition*&b,longintnum2){addition*n2=newaddition(num2);n2->next=NULL;if(b==NULL)b=n2;else{b->next=n2;b=b->next;}}voidsum(intnum1,intnum2,inti){int*total;total=newint[];total[i]=num1+num2;if(total[i]>9){total[i]=total[i]%10;total[i-1]=num1+num2+1;}if(i==0){cout<<"Theadditionalansweris:";cout<<total<<endl;}for(i=0;i<size;i++){number1(a,num1[i]);number2(a,num2[i]);}intm1,m2;while(i>=0,i=size){m1=num1[i];m2=num2[i];sum(m1,m2,i);i--;}}voidmain(){addition*a=NULL;char*n;intsize;n=newchar[];gets(n);size=strlen(n)+1;char*no1;no1=newchar[size];no1=n;cout<<"theinputnumberis:"<<no1<<endl;cout<<"sizeofthenumber:"<<size-1<<endl;int*num1;inti;num1=newint[size];for(i=0;i<size;i++){num1[i]=int(no1[i]);}for(i=0;i<size-1;i++){cout<<(num1[i]-48);}gets(n);size=strlen(n)+1;char*no2;no2=newchar[size];no2=n;cout<<"sizeofthenumber:"<<size-1<<endl;int*num2;num2=newint[size];for(i=0;i<size;i++){num2[i]=int(no2[i]);}cout<<"theinputnumberis:";for(i=0;i<size-1;i++){cout<<(num2[i]-48);}cout<<endl;cout<<endl;}无法达到相加的效果.我想要任意两个任意长的整数能相加.请问我上述程序哪里不足,应该怎么修改?感谢.更希望你们能告诉我的错误在哪,思路哪不对.谢谢.虽然没什么分能给你们.因为我的帐户里只有2分.对不起.
语法和逻辑有问题。
看不懂
答:你多在妈妈网回帖子,发到那上面去会有更多的人看到的,这里问答的很容易就沉了。详情>>