蓝桥杯基础练习VIP-高精度加法(C语言)

蓝桥杯 高精度加法 题目 问题描述:输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。 算法描述:由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。 定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。计算c = a + b的时候,首先将A[0]与B[0]相加,如果有进位产生,则把进位(即和的十位数)存入r,把和的个位数存入C[0],即C[0]等于(A[0]+B[0])%10。然后计算A[1]与B[1]相加, 阅读详情

题目描述

输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。

算法描述

由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。

定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。

计算c  =  a  +  b的时候,首先将A[0]与B[0]相加,如果有进位产生,则把进位(即和的十位数)存入r,把和的个位数存入C[0],即C[0]等于(A[0]+B[0])%10。然后计算A[1]与B[1]相加,这时还应将低位进上来的值r也加起来,即C[1]应该是A[1]、B[1]和r三个数的和.如果又有进位产生,则仍可将新的进位存入到r中,和的个位存到C[1]中。依此类推,即可求出C的所有位。

最后将C输出即可。

输入格式

输入包括两行,第一行为一个非负整数a,第二行为一个非负整数b。两个整数都不超过100位,两数的最高位都不是0。 

输出格式

输出一行,表示a  +  b的值。 

样例输入

20100122201001221234567890
2010012220100122

样例输出

20100122203011233454668012

思路

先用字符串接受输入数字,再将其转换成高精度数进行相加

字符型转换时可以倒转数字位置,方便计算。

先设高精度数组初始值为0,相加时可以以最高位为边界相加

注意进位问题,设立变量用于进位

#include<stdio.h>
#include<string.h>
void invert(char a[], int a1[], int n) {//字符串转化成字符型,同时转换顺序
	for (int i = 0;i < n;i++) {
		a1[i] = a[n - 1 - i] - '0';
	}
}

int main() {
	char a[110], b[110];
	scanf("%s", a);
	scanf("%s", b);//字符串表示输入的数字

	int n = strlen(a);//找位数
	int m = strlen(b);
	int a1[110] = { 0 };
	int b1[110] = { 0 };
	invert(a, a1, n);
	invert(b, b1, m);
	int carry = 0;//进位
	int i = 0;
	int N = n > m ? n : m;//找出最大位数
	for (i = 0;i < N;i++) {//依次相加
		a1[i] = a1[i] + b1[i] + carry;
		carry = a1[i] / 10;//进位
		a1[i] = a1[i] % 10;//个位数
	}
	if (carry > 0) {//最高位进位
		a1[i] = carry;
		N = i+1;
	}
	for (i = N - 1;i >= 0;i--) {
		printf("%d", a1[i]);
	}
	
	return 0;
}

高精度加法 基础练习 高精度加法   时间限制:1.0s   内存限制:512.0MB        问题描述   输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。 算法描述   由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。   定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位 阅读详情

相关推荐

蓝桥杯练习--高精度加法

问题描述   输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。 算法描述   由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。   定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。   计算c = a + b的时候,首先将A[0]与B[0]相加,如果有进位产生,则

coding_debug的博客 6627

基础练习 高精度加法

问题描述 输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。 定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。 计算c = a + b的时候,首先将A[0]与B[0]相加,如果有进位产生,则把进位(即和的十位数)存入...

aidwao的博客 484

蓝桥杯VIP习题及答案基础练习(C语言)

因为报名了蓝桥杯省赛,所以写下这个博客来记录学习 一、基础训练 阶乘计算 问题描述 输入一个正整数n,输出n!的值。   其中n!=123*…*n。 算法描述 n!可能很大,而计算机能表示的整数范围有限,需要使用高精度计算的方法。使用一个数组A来表示一个大整数a,A[0]表示a的个位,A[1]表示a的十位,依次类推。   将a乘以一个整数k变为将数组A的每一个元素都乘以k,请注意处理相应的进位。 ...

qq_37992321的博客 4184

[Java] 蓝桥杯 基础练习 高精度加法

问题输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。算法由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储,应该用数组来处理这道题,使用数组解题具体可参照柳神的解题方法,这里使用java的BigInteger类解题,虽然java在解一些题上不如C++,但BigInteger类是真香啊 import java.util.Scanner; import java.math.BigInteger; public class Main { public static vo

cold_wind_的博客 343

蓝桥杯C/C++VIP试题每日一练之高精度加法

蓝桥杯每日一练第十八天高精度计算。

静Yu的博客 3376

保姆级教程:用xmir-patcher一键解锁Redmi AX3000路由器的SSH(附视频演示)

本文提供Redmi AX3000路由器SSH解锁的保姆级教程,详细介绍了使用xmir-patcher工具一键解锁SSH的步骤,包括环境搭建、工具获取、图形化操作详解及常见问题排查。解锁后,用户可通过SSH连接实现刷机、插件安装、网络优化等高级功能,提升路由器性能。

weixin_29216049的博客 723

python高精度加法_[蓝桥杯][基础练习VIP]高精度加法 (C语言代码)

解题思路:注意事项:参考代码:#include #include int main(void){char a[103], b[103];int lengtha, lengthb;while (scanf("%s%s", a, b) != EOF){int num1[103] = { 0 }, num2[103] = { 0 }, num3[103] = { 0 }, i, j, l;lengtha...

weixin_39718006的博客 206

ROS2理论与实践_宇树机器人Go2开发指南(文字)

本文介绍了Unitree Go2机器人ROS2开发环境的安装与配置流程。主要内容包括:1)从GitHub克隆unitree_ros2仓库;2)安装ROS2 Foxy版本依赖项;3)编译特定版本的CycloneDDS(0.10.2);4)编译unitree_go和unitree_api功能包;5)网络配置,包括设置静态IP和修改环境变量脚本setup.sh以指定网络接口。文章还提供了本地回环测试的替代方案,并建议配置完成后重启电脑。整个流程涉及ROS2环境切换、网络适配和编译安装等多个技术环节。

Li_Dongyi的博客 4203

c语言高精度加减法程序,[蓝桥杯][基础练习VIP]高精度加法-题解(C语言代码)...

注意事项:当进行置换时,for(int i=0;i参考代码:#includeusingnamespacestd;inta[105];intb[105];intc[105];intmain(){inti=0,len1,len2,j=0;charch;inttemp;while((ch=getchar())!='\n'){temp=ch-'0';a[i]=temp;i++;}len1...

weixin_35851482的博客 369

Keil 丢失编译器版本5、内核文件core_cm3.c报错

若用的是旧版本的core_cm3.c ,就使用编译器v5编译工程;若想用编译器v6,就更新4个相关的内核文件:(CMSIS:Cortex Microcontroller Software Interface Standard,ARM Cortex™ 微控制器软件接口标准)

qq_52804040的博客 6238

工业组态软件Intouch(单机版)入门{第二篇}

第5步:*都装好之后,需要进行测试授权是否生效,测试1:能否正常运行项目和编辑项目(能否编辑项目,取决于你的授权是否包含开发功能,如果只是单一的runtime授权,则只能运行项目,不能编辑项目)。在线第3步:点击第一个框右边的按钮,弹出文件浏览窗口,选中你的XMl授权文件,打开,然后你的授权出现在下方的列表中,勾选你的授权,然后点击Activate,等待几秒,授权就会出现在管理器页面的列表中,并且Status会显示Activated。第1步:软件安装好之后,先要配置好授权服务器。等待几秒,激活完成。

weixin_41571357的博客 1万+

蓝桥杯VIP试题 基础练习 高精度加法

本题由Java实现。 题目如下: 问题描述   输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。 算法描述   由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。   定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。   计算c = a + b的时候,首先将A[0]与B[0...

夜的瞳 570

ComfyUI的G-Dino模型加载器报错解决方案:从崩溃到重生

遇到G-Dino模型加载器报错不要慌,按照本文的步骤操作,99%的问题都能解决。模型文件正确下载到指定位置segment_anything节点安装完整且无冲突需要补充更多细节或故障排除方法吗?可以随时告诉我。

2301_78150483的博客 4020

C语言 蓝桥杯 试题 基础练习 高精度加法

问题描述   输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。 算法描述   由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。   定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。   计算c=a+b的时候,首先将A[0]与B[0]相加,如果有进位产生,则把进位(即和的十位数)存入r,把和的个位数存入C[0],即C[0]等于(A[0]+B[0])%10。然后计算A[1]...

Insane_Outlier的博客 569

RK3588部署rtmpose模型

摘要: 本文详细介绍了在RK3588开发板上部署RTMPose模型的全流程。首先在Ubuntu环境中搭建MMCV框架,通过MMPose工具将PTH模型转换为ONNX格式。随后使用RKNN-Toolkit2将ONNX模型转换为RKNN格式,并完成开发板部署。关键步骤包括模型转换(PTH→ONNX→RKNN)、环境配置和推理验证,最终实现人体姿态估计功能。整个过程涉及MMPose、RKNN-Toolkit等工具链的使用,为边缘计算场景下的实时姿态分析提供了可行方案。

qq_44224801的博客 1216

基于Simulink的新能源汽车热管理系统设计与仿真详细介绍

新能源汽车(如纯电动汽车和混合动力汽车)的热管理系统是确保电池、电机和电控系统高效运行的关键。通过合理设计热管理系统,可以提高车辆的续航里程、延长电池寿命并提升整体性能。以下是如何在 MATLAB 和 Simulink 中设计并仿真一个新能源汽车热管理系统的详细步骤。通过上述步骤,我们成功设计并实现了基于 Simulink 的新能源汽车热管理系统。该系统能够根据目标温度和实际反馈,通过 PID 控制器或模糊控制器调整冷却液流量、风扇转速等参数,实现对电池、电机和车内的精确温度控制。

xiaoheshang_123的博客 383

Java实现 蓝桥杯VIP 基础练习 高精度加法

java算法 蓝桥杯 高精度加法 问题描述   在C/C++语言中,整型所能表示的范围一般为-231到231(大约21亿),即使long long型,一般也只能表示到-263到263。要想计算更加规模的数,就要用软件来扩展了,比如用数组或字符串来模拟更多规模的数及共运算。   现在输入两个整数,请输出它们的和。 输入格式   两行,每行一个整数,每个整数不超过1000位 输出格式   一行,两个整...

南 墙 1万+

基于lstm+gru+transformer的电池寿命预测健康状态预测-完整数据代码

基于lstm+gru+transformer的电池寿命预测健康状态预测-完整数据代码

880

[蓝桥杯][基础练习VIP]高精度加法&&[蓝桥杯][算法提高VIP]大数加法

文章目录[蓝桥杯][基础练习VIP]高精度加法题目描述输入输出样例输入样例输出[蓝桥杯][算法提高VIP]大数加法题目描述输入输出样例输入样例输出c语言AC代码 [蓝桥杯][基础练习VIP]高精度加法 题目描述 输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。 定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。 计算c =

qq_43610614的博客 519

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

蓝桥杯 基础练习VIP 高精度加法 java

蓝桥杯 基础练习VIP 高精度加法 java 题目 题目描述 输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。 定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。 计算c = a + b的时候,首先将A[0]...

向南的博客 1347

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

蓝桥杯练习系统-基础练习34道题解答答案全汇总(c/c++)

蓝桥杯练习系统BASIC-13 数列排序(c++,利用sort) 蓝桥杯练习系统BASIC-12 十六进制转八进制(c++,利用string) 蓝桥杯练习系统BASIC-11 十六进制转十进制(c++,利用流) 蓝桥杯练习系统BASIC-10 十进制转十六进制(c++,利用流) 蓝桥杯练习系统BASIC-9 特殊回文数(c++利用流和字符串) 蓝桥杯练习系统BASIC-8 回文数(c++,超简洁,利用流和字符串) 蓝桥杯练习系统BASIC-7 特殊的数字(c++,利用流和string) 蓝桥练习系统BASI

weixin_53037232的博客 5783

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

蓝桥杯 基础练习 高精度加法 (vip)

蓝桥杯 基础练习 高精度加法 (vip) 代码: #include&lt;stdio.h&gt; #include&lt;string.h&gt; int main() { char a[110],b[110],c[110]; memset(c,0,sizeof(c));//防止出现乱码,清零 int len1,len2,i; scanf("%s%s"...

Qi2456的博客 444

蓝桥杯 VIP 基础练习 高精度加法

基础练习 高精度加法   时间限制:1.0s   内存限制:512.0MB        问题描述   输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。 算法描述   由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。   定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位

colorfulshark 2029

[蓝桥杯][基础练习VIP]高精度加法

[蓝桥杯][基础练习VIP]高精度加法 题目描述 输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。 定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。 计算c = a + b的时候,首先将A[0]与B[0]相...

A_dmin的博客 256

[蓝桥杯][基础练习VIP]高精度加法/大数加法

[蓝桥杯][基础练习VIP]高精度加法 时间限制: 1Sec 内存限制: 128MB 提交: 1845 解决: 705 题目描述 输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。 定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数...

LSZ_179的博客 286
上一篇: 蓝桥杯基础练习VIP-阶乘计算(C语言)
下一篇: 蓝桥杯算法提高VIP-任意年月日历输出(C语言)
Ehell
博客等级 码龄4年 23粉丝 25原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值