- Code: Select all
#include<stdio.h>
#include<string.h>
void str_rev(char str[]);
int main()
{
char str[1001][1001],str3[1002];
int i,j,k,m,x=0,carry=0,max=0;
for(i=0;i<101;i++)
{
gets(str[i]);
if(str[i][0]=='0'&&str[i][1]=='\0')
break;
if(strlen(str[i])>=max)
max=strlen(str[i]);
}
j=i;
for(i=0;i<j;i++)
{
str_rev(str[i]);
for(k=strlen(str[i]);k<max;k++)
{
str[i][k]='0';
}
str[i][k]='\0';
str_rev(str[i]);
}
for(k=max-1,m=0;k>=0,m<max;k--,m++)
{
x=0;
for(i=0;i<j;i++)
{
x+=(str[i][k]-'0')+carry;
carry=0;
}
if(x>9)
{
carry=x/10;
str3[m]=x%10+'0';
}
else
str3[m]=x+'0';
}
str3[max]=carry+'0';
if((str3[max]-'0')==0)
str3[max]='\0';
else
str3[max+1]='\0';
str_rev(str3);
puts(str3);
return 0;
}
void str_rev(char str[])
{
char a;
int i,j,n;
n=strlen(str);
for(i=0,j=n-1;i<n/2&&j>=0;i++,j--)
{
a=str[i];
str[i]=str[j];
str[j]=a;
}
str[n]='\0';
}

