高精度加法C语言
#include <stdio.h>
#include <string.h>
int main()
{
char a[202]={0},b[202]={0};
scanf("%s%s",a,b);
int alen=strlen(a),blen=strlen(b);
int a1[202]={0},b1[202]={0},c1[203]={0},i;
for(i=0;i<alen;i++)
{
a1[i]=a[alen-1-i]-'0';
}
for(i=0;i<blen;i++)
{
b1[i]=b[blen-1-i]-'0';
}
alen = alen > blen ? alen:blen;
for(i=0;i<alen;i++)
{
c1[i]=a1[i]+b1[i];
}
for(i=0;i<alen;i++)
{
if(c1[i]>=10)
{
c1[i+1]+=c1[i]/10;
c1[i] %=10;
}
}
while(!c1[i] && i)
{
i--;
}
for(;i>=0;i--)
{
printf("%d",c1[i]);
}
return 0;
}
你數過天上的星星嗎

浙公网安备 33010602011771号