描述
求两个不超过200位的非负整数的和。
输入有两行,每行是一个不超过200位的非负整数,可能有多余的前导0。输出一行,即相加后的结果。结果里不能有多余的前导0,即如果结果是342,那么就不能输出为0342。样例输入
22222222222222222222
33333333333333333333
样例输出
55555555555555555555
#include<stdio.h>
#include<string.h>
int main()
{
int i,j,str1,str2,k=0; //k用来表示bool值,0假1真
int a1[255],a2[255],a3[255];
char c1[255],c2[255]; //用字符方式存储两个大数的数值
for(i=0; i<255; i++)
{
a1[i]=0; //把int数组内所有数内置为0
a2[i]=0;
}
scanf("%s",c1);
scanf("%s",c2); //用char类型c1,c2存储大数的值
str1=strlen(c1); //用str1表示读入第一个数的长度
str2=strlen(c2); //用str2表示读入第二个数的长度
j=0;
for(i=str1-1; i>=0; i--) //用int类型的数组来来存放大数的位数
a1[j++]=c1[i]-'0