a+b
大数的a+b
发布时间:2020-12-14 02:42:46 所属栏目:大数据 来源:网络整理
导读:主页 论坛 题库 名次 状态 统计 开学第一周周六是15赛季定位赛,选拔acm集训队成员,请于周六2点前到601实验室,可携带书籍。互相转告~ - ~ 题目 B: a+b 时间限制: 1 Sec?? 内存限制: 128 MB 提交: 31?? 解决: 7 [ 提交][ 状态][ 论坛] 题目描述 a+b 输入 一
题目 B: a+b时间限制: 1 Sec?? 内存限制: 128 MB提交: 31?? 解决: 7 [ 提交][ 状态][ 论坛] 题目描述输入一个 m 代表多少组数据 每组两个数a b,空格隔开,每个数小于1000位 输出a+b的和。。并换行。 样例输入
5
123456 123456
654321 654321
987654321123456789 987654321123456789
2222222222222222222222222222222222211122222222222222222222222222222223333333333333333333339999999999999999999999999999999998888888888888888888888887777777777777777777777777777777
222221111 222222222211
样例输出
246912
1308642
1975308642246913578
122222222222222222222222222222221110002222222222222222222210000000000222222222222222222220
111222222222
提示;注意数是比较大的,不能用寻常的思路去做,字符串容纳的位数比较大,可以尝试字符串来做这道题。#include<stdio.h>
#include<string.h>
int
main()
{
????
int
i,n,q,w,t,j;
????
char
a[1000],b[1000];//用字符串a?b来记录输进的数。
????
scanf
(
"%d"
,&n);
????
while
(n--)
????
{
????????
int
c[1000]={0},d[1000]={0},e[1000]={0};//因为字符串加减麻烦,因此用数组来讲字符串反过记录,
??????
scanf
(
"%s %s"
,a,b);
????????
q=
strlen
(a);//测试字符串的长度。
????????
w=
strlen
(b);
????????
if
(q>w)
????????????
t=q;
????????
else
????????????
t=w;//找出字符串长度最长的位数。
????????
for
(i=0;i<q;i++)
????????????
c[q-i-1]=a[i]-
'0'
;
????????
for
(i=0;i<w;i++)
????????????
d[w-1-i]=b[i]-
'0'
;//字符转化成数字。
?????????
for
(i=0;i<t;i++)
????????
{
????????????
e[i]=c[i]+d[i]+e[i];//将数加起来。
????????????
if
(e[i]>=10)
????????????
{e[i]=e[i]-10;
????????????
e[i+1]=1;}//进位。
????????
}q=0;
????????
for
(i=t;i>=0;i--)
????????
{
????????????
if
(e[i]!=0)//判断是否数的最高位是否为0;
????????????
{
????????????????
q++;
????????????????
for
(j=i;j>=0;j--)
????????????????
printf
(
"%d"
,e[j]);
????????????????
break
;
????????????
}
?
????????
}
????????
if
(q==0)
????????????
printf
(
"0"
);//排除0000+00000;
????????????
printf
(
"n"
);
?
????
}
???
return
0;
}
?
/**************************************************************
????
Problem: 1521
????
User: 141210145
????
Language: C
????
Result: 正确
????
Time:0 ms
????
Memory:968 kb
****************************************************************/
中文? English? 平顶山学院-计算机科学与技术 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |