该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include
#include
int main()
{
int i,j,jj,k,kk,m,n,max,aa[1000]={0},bb[1000]={0},c[1001]={0};
char a[1000]={0},b[1000]={0};
scanf("%d",&n);
for(i=0;i
{
scanf("%s%s",a,b);
j=strlen(a);//计算长度
k=strlen(b);
max=j>=k?j:k;//找最大位数
for(jj=0;j-1>=0;j--,jj++)
aa[jj]=a[j-1]-'0';//存入数字
for(kk=0;k-1>=0;k--,kk++)
bb[kk]=b[k-1]-'0';//存入数字
for(m=0;m
c[m]=aa[m]+bb[m];//从大数的最后一位开始相加
for(m=0;m
{
if(c[m]>=10)//满10进1
{
c[m]=c[m]-10;
c[m+1]=c[m+1]+1;
}
}
printf("Caes %d:\n%s + %s = ",i+1,a,b);
if(c[max]!=0)//判断是否进一位
for(;max>=0;max--)//max不等于0,进一位,从max开始输出
printf("%d",c[max]);
else
for(;max-1>=0;max--)//max等于0,从max-1开始输出
printf("%d",c[max-1]);
printf("\n\n");
for(j=0;j<=max;j++)//清零
{
a[j]=0;
b[j]=0;
c[j]=0;
aa[j]=0;
bb[j]=0;
}
}
return 0;
}