uva 424 Integer Inquiry(字符串,高精度)

#include <stdio.h>
#include <string.h>

int main ()
{
	char str[101][110];
	int a[101][110]={0},b[200]={0},i,j,k,length[200],t,max;
	t=0;
	while(gets(str[t]))
	{
		if(str[t][0]=='0'&&str[t][1]=='\0')
			break;
		t++;
	}
	for(i=0;i<t;i++)	
		length[i]=strlen(str[i]);
	for(i=0;i<t;i++)
		for(j=length[i]-1,k=0;j>=0,k<length[i];k++,j--)
			a[i][k]=str[i][j]-'0';
	max=length[0];
	for(i=1;i<t;i++)
		if(length[i]>max)
			max=length[i];
	for(i=0;i<max;i++)
	{
		for(j=0;j<t;j++)   
			b[i]=b[i]+a[j][i];
        for(k=0;k<200;k++)
		{	
			b[k+1]+=b[k]/10;
			b[k]%=10;
		}
	}
    for(i=199;i>=0;i--)
	{	
		if(b[i]!=0)
			break;
	}
    for(k=i;k>=0;k--)
		printf("%d",b[k]);
	printf("\n");
	return 0;
}

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页