#include<stdio.h>
#include<string.h>
int main()
{
char s1[1002],s2[1002];
int c,i,j,n,m,len1,len2,count;
count=1;
scanf("%d",&n);
m=n;
while(m--) //注意这种形式的控制test cases个数的方法
{
int a[1002]={0},b[1002]={0}; /*这里s[1000]={0}可以将数组中元素全部洗成0,当然也可以用memset(s,0,1000*sizeof(int))的方法来处理*/
scanf("%s%s",s1,s2);
len1=strlen(s1);
len2=strlen(s2);
c=0;
for(i=len1-1;i>=0;i--)
a[c++]=s1[i]-'0'; /*注意:这里是将数据字符转换数据,数组a是int型,数组s1是char型,这种转换就是通过-‘0’来实现的,下边同理*/
c=0;
for(i=len2-1;i>=0;i--)
b[c++]=s2[i]-'0';
for(i=0;i<1002;i++)
{
a[i]+=b[i];
if(a[i]>=10)
{
a[i]-=10;
a[i+1]++;
}
}
printf("Case %d:\n",count++);
printf("%s + %s = ",s1,s2);
for(i=1001;i>=0;i--)
if(a[i])
break;
for(j=i;j>=0;j--)
printf("%d",a[j]);
printf("\n");
if(count!=n+1)
printf("\n");
}
return 0;
}
HDU1002
最新推荐文章于 2020-06-06 00:51:29 发布