C语言 用字符串的形式输入两个长整数(20位以上),计算它们的和,并输出到屏幕上。
int main()
{
char str1[100],str2[100];
int a[101];
int k=0,i,j;
scanf("%s",str1);
scanf("%s",str2);
int len1 = strlen(str1);
int len2 = strlen(str2);
int add = 0;
i=len1-1;
j=len2-1;
while(i>=0 || j>=0)
{
int n = 0;
if(i>=0)
n+=str1[i--]-'0';
if(j>=0)
n+=str2[j--]-'0';
n+=add;
add = n/10;
a[k++] = n%10;
}
for(i=k-1;i>=0;i--)
printf("%d",a[i]);
}
循环每位相加,记录是否进位就行了