1、高精度水题,一次AC~
2、注意别把前导0输出来了。
#include <stdio.h>
#include <string.h>int main(void)
{
char s[110]="";
int a[110][110]={0},len=0,i=0,j=0,max=0,k=0;
while(scanf("%s",s)==1)
{
len=strlen(s);
if(len>max) max=len;
for(j=0;j<len;j++)
{
a[i][j]=s[len-1-j]-'0';
}
i++;
}
for(j=0;j<max;j++)
{
for(k=1;k<i-1;k++)
{
a[0][j]+=a[k][j];
}
}
for(j=0;j<max;j++)
if(a[0][j]>9)
{
a[0][j+1]+=a[0][j]/10;
a[0][j]=a[0][j]%10;
}
if(a[0][max]>0)
printf("%d",a[0][max]);
max--;
while(max>=0)
printf("%d",a[0][max--]);
printf("\n");
return 0;
}