==================================================================
#include<stdio.h>
#include<string.h>
#define MAX 1000 /*宏定义,下面遇到MAX的时候都变成1000 */
int main(void)
{
int arr1[MAX]={0},arr2[MAX]={0};
int len,i,len1,len2,t,j = 0;
char str[MAX]; /*读入数据,并进行预处理(计算出数字位数,并方向存放)*/
scanf("%s",str);
len1 = strlen(str);
for(i=0; i<len1; ++i)
arr1[i] = str[len1-1-i] - *0*;
scanf("%s",str);
len2 = strlen(str);
for(i=0; i<len2; i++)
arr2[i] = str[len2-1-i] - *0*;
len = (len1>len2)?len1:len2;
for(i=0; i<len; i++)
{
t = arr1[i] + arr2[i] +j;
arr1[i] = t % 10;
j = t / 10;
}
if(j != 0) arr1[len++] = j;
for(i=0; i<len; ++i)
printf("%d",arr1[len-1-i]);
return 0;
}
===================================================================