大整数加法

简介:

【关键在于怎么把大数读入数组(用一个char型变量做辅助)】

复制代码
#include <stdio.h>
#include <string.h>
#define M 10
#define N 1000
void add(int *a,int *b,int *c)//加法
{
int i,carry=0;
for (i=N-1;i>=0;i--)
{
c[i]=a[i]+b[i]+carry;
if (c[i]>=M)
{
c[i]-=M;
carry = 1;
}
else
{
carry = 0;
}
}
}
void con(int *a,int *c)//转换
{
int i,j;
i=0;
while (c[i]==0)
i++;
j=999;
while (i<=999)
a[j--]=c[i++];

}
void main()
{
int a[1000],b[1000],c[1000],i;
char ch;
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));

i=999;
memset(c,0,sizeof(c));
while ((ch=getchar())!='\n')
c[i--]=ch-48;
con(a,c);
i=999;
memset(c,0,sizeof(c));
while ((ch=getchar())!='\n')
c[i--]=ch-48;
con(b,c);
memset(c,0,sizeof(c));
add(a,b,c);
i=0;
while (c[i]==0)
i++;
while (i<=999)
printf("%d",c[i++]);
printf("\n");
}
复制代码

 


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

相关文章
|
Docker Python 容器
Python项目打包成docker镜像,并在docker中运行
Python项目打包成docker镜像,并在docker中运行
1606 0
|
编解码
LabVIEW条形码识别(实战篇—5)
LabVIEW条形码识别(实战篇—5)
LabVIEW条形码识别(实战篇—5)
|
12月前
|
机器学习/深度学习 人工智能 物联网
.NET 技术:引领未来开发潮流
.NET 技术以其跨平台兼容性、高效的开发体验、强大的性能表现和安全可靠的架构,成为引领未来开发潮流的重要力量。本文深入探讨了 .NET 的核心优势与特点,及其在企业级应用、移动开发、云计算、人工智能等领域的广泛应用,展示了其卓越的应用价值和未来发展前景。
184 5
|
人工智能 弹性计算 监控
触手可及,函数计算玩转 AI 大模型解决方案
阿里云推出的“触手可及,函数计算玩转 AI 大模型”解决方案,利用无服务器架构,实现AI大模型的高效部署和弹性伸缩。本文从实践原理、部署体验、优势展现及应用场景等方面全面评估该方案,指出其在快速部署、成本优化和运维简化方面的显著优势,同时也提出在性能监控、资源管理和安全性等方面的改进建议。
307 5
|
JavaScript API 开发工具
vue2和vue3版本区别
【10月更文挑战第4天】
|
Android开发
Android使用ViewPager做无限轮播,人为滑动时停止
Android使用ViewPager做无限轮播,人为滑动时停止
191 2
|
开发工具 开发者
使用阿里云的 OpenAPI SDK 时经常遇到调用失败的问题
使用阿里云的 OpenAPI SDK 时经常遇到调用失败的问题
501 1
|
Oracle 关系型数据库 MySQL
数据库中对时间的操作(mySql、Oracle、pgSql)
数据库中对时间的操作(mySql、Oracle、pgSql)
|
iOS开发
app启动时的闪屏页显示不全问题的两种解决方案
app启动时的闪屏页显示不全问题的两种解决方案
298 0
下一篇
开通oss服务