利用数组进行存储。
#include<stdio.h>
#include<string.h>
int main()
{
char a1[200]={0},b1[200]={0};
int a[200]={0},b[200]={0},c[200]={0},i,j,m,n,flag=0,k;
gets(a1);
gets(b1);
m=strlen(a1);
n=strlen(b1);
if(m>n)
i=m;
else
i=n;
for(j=i;j>0;j--)
{
if(m>0)
a[j]=a1[m-1]-48;
if(n>0)
b[j]=b1[n-1]-48;
m--;
n--;
}
k=i;
for(i;i>=0;i--)
{
c[i]=a[i]+b[i];
c[i]=c[i]+flag;
flag=0;
if(c[i]>=10)
{
m=c[i];
c[i]=m%10;
flag=m/10;
}
}
if(c[0]!=0)
printf("%d",c[0]);
for(i=1;i<=k;i++)
{
printf("%d",c[i]);
}
return 0;
}