Problem 1002 Another A+B Problem

博客给出了输入输出的描述,包含示例输入与输出,如多组数字相加示例。还给出提示,在Java语言中处理大数字时可使用java.math.BigInteger类。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Description

xiaoT上小学了,今天他刚掌握了整数的加法运算,于是回家向他的姐姐xiaoM炫耀他是多么的聪明(?),xiaoM不胜其烦,给xiaoT出了一道加法题,但是这道题跟xiaoT在学校学的有些不一样,把他给难住了,于是他像善于编程的你求救。
题目是这样的:给你两个整数a,b,计算a+b的值,你可以假设整数a,b的长度小于1000位。(a,b都大于0)

Input

输入有多组测试数据,你的程序必须度到EOF.
每组测试数据有两个正整数a,b,用空格隔开。

Ouput

输出a+b的值。

Sample Input

10 20 

123 456 

456456789126498795648965645646561654654 46545621316549871231620046504685016546500

Sample Output

30 

579 

47002078105676370027269012150331578201154

Hint

Java语言不妨用java.math.BigInteger类. 

#include<stdio.h>
#include<string.h>

int main(){
	char n1[1000]={'0'},n2[1000]={'0'};
	int result[1000]={0},t1[1000]={0},t2[1000]={0};
	int len,len1,len2;
	int i,j;
	while(scanf("%s %s",&n1,&n2)!=EOF){
		len1=strlen(n1);
		len2=strlen(n2);
		if(len1>len2){
			len=len1;
		}else{
			len=len2;
		}
		for(i=0,j=len1-1;j>=0;i++,j--){  
			t1[i]=n1[j]-'0';
		}
		for(i=0,j=len2-1;j>=0;i++,j--){
			t2[i]=n2[j]-'0';
		}
		for(i=0;i<len;i++){
			result[i]+=t1[i]+t2[i];
			if(result[i]>9){
				result[i+1]++;
				result[i]-=10;
			}
		}
		if(result[len]>0){
			len++;
		}
		for(i=len-1;i>=0;i--){
			printf("%d",result[i]);
		}
		printf("\n");
		for(i=0;i<1000;i++){
			n1[i]='0';
			n2[i]='0';
			result[i]=0;
			t1[i]=0;
			t2[i]=0;
		}
	}	
	return 0;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值