加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

大数的a+b

发布时间:2020-12-14 02:42:46 所属栏目:大数据 来源:网络整理
导读:主页 论坛 题库 名次 状态 统计 开学第一周周六是15赛季定位赛,选拔acm集训队成员,请于周六2点前到601实验室,可携带书籍。互相转告~ - ~ 题目 B: a+b 时间限制: 1 Sec?? 内存限制: 128 MB 提交: 31?? 解决: 7 [ 提交][ 状态][ 论坛] 题目描述 a+b 输入 一
主页 论坛 题库 名次 状态 统计
开学第一周周六是15赛季定位赛,选拔acm集训队成员,请于周六2点前到601实验室,可携带书籍。互相转告~ - ~

题目 B: a+b

时间限制: 1 Sec?? 内存限制: 128 MB
提交: 31?? 解决: 7
[ 提交][ 状态][ 论坛]

题目描述

a+b

输入

一个 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
****************************************************************/

[ 提交][ 状态][ 论坛]

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读