HDOJ1002

简介:
复制代码
#include<stdio.h>
#include<string.h>
int main()
{
char a[1000],b[1000];
int c[1005];
char ch;
int len_a,len_b;
int idx_c,len_c;
int sum;
int i,j;
len_a = 0;
len_b = 0;
scanf("%d",&sum);
//读取数据
for(j=0 ; j<sum ;j++)
{
//读取缓存区数据
memset(c,0,sizeof(int)*1005);
scanf("%s",a);
scanf("%s",b);
len_a = strlen(a)-1; //这里是下标而不是长度。
len_b = strlen(b)-1;
//确定结果的长度
if(len_a >= len_b)
{
idx_c = len_a+1;
len_c = idx_c;
}
else
{
idx_c = len_b+1;
len_c = idx_c;
}
//进行相加的操作
do
{
c[idx_c] = c[idx_c]+a[len_a]-'0'+b[len_b]-'0';
if(c[idx_c] >= 10)
{
c[idx_c] %= 10;
c[idx_c-1] += 1;
}
idx_c--;
len_a--;
len_b--;
}while(len_a!=-1 && len_b!=-1 );

while(len_a != -1)
{
c[idx_c] = c[idx_c]+a[len_a]-'0';
if(c[idx_c] >= 10)//这里要进行进位判断
{
c[idx_c] %= 10;
c[idx_c-1] += 1;
}
idx_c--;
len_a--;
}
while(len_b != -1)
{
c[idx_c] = c[idx_c]+b[len_b]-'0';
if(c[idx_c] >= 10)
{
c[idx_c] %= 10;
c[idx_c-1] += 1;
}
idx_c--;
len_b--;
}

printf("Case %d:\n%s + %s = ",j+1,a,b);
if(c[idx_c] != 0) //看这个位是否有"值"
printf("%d", c[idx_c]);
for(i = idx_c + 1; i <= len_c ; i++)
{
printf("%d", c[i]);
}

if(j == sum-1)
printf("\n");
else
printf("\n\n");
}
return 0;

}
复制代码

 


本文转自ZH奶酪博客园博客,原文链接:http://www.cnblogs.com/CheeseZH/archive/2012/03/14/2397049.html,如需转载请自行联系原作者

相关文章
HDOJ 2802 F(N)
HDOJ 2802 F(N)
97 0
HDOJ 2802 F(N)
HDOJ 2040 亲和数
HDOJ 2040 亲和数
123 0
HDOJ 1323 Perfection(简单题)
HDOJ 1323 Perfection(简单题)
121 0
HDOJ 1214 圆桌会议
HDOJ 1214 圆桌会议
96 0
HDOJ 2013 蟠桃记
HDOJ 2013 蟠桃记
95 0
HDOJ的题目分类
模拟题, 枚举 1002 1004 1013 1015 1017 1020 1022 1029 1031 1033 1034 1035 1036 1037 1039 1042 1047 1048 1049 1050 1057 1062 1063 1064 1070 1073 ...
1825 0
HDOJ 2056 Rectangles
Problem Description Given two rectangles and the coordinates of two points on the diagonals of each rectangle,you have to calculate the area of the intersected part of two rectangles.
1001 0
|
Java
HDOJ 1201
18岁生日 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 10076 Accepted Submission(s): 3201 Problem Description Gardon的18岁生日就要到了,他当然很开心,可是他突然想到一个问题,是不是每个人从出生开始,到达18岁生日时所经过的天数都是一样的呢?似乎并不全都是这样,所以他想请你帮忙计算一下他和他的几个朋友从出生到达18岁生日所经过的总天数,让他好来比较一下。
838 0