a+b(高精度)[陈涛]——c语言
#include<stdio.h>
#include<string.h>
char s[1000];--------------------------------------------------//定义一个字符数组
int a[1000]={0},b[1000]={0};------------------------------// 定义两个int类型数组
int main()
{
int l1,l2,z,i;
freopen("hp+.in","r",stdin);
freopen("hp+.out","w",stdout);-----------------------------//进行文件操作
scanf("%s",s);-----------------------------------------------//读入第一个数
l1=strlen(s);------------------------------------------------//用string中的strlen函数得到第一个数的长度
for(i=0;i<=l1-1;i++)--------------------------------------//用for循环来倒叙存入a数组
{
a[l1-1-i]=s[i]-'0';
}
scanf("%s",s);----------------------------------------------//读入第二个数
l2=strlen(s);-------------------------------------------------//用string中的strlen函数得到第二个数的长度
for(i=0;i<=l2-1;i++)--------------------------------------//用for循环来倒叙存入b数组
{
b[l2-1-i]=s[i]-'0';
}
if(l1>l2)
z=l1;
else
z=l2;-------------------------------------------------------//判断a数组和b数组谁的长度大
for(i=0;i<=z-1;i++)
{
a[i]=a[i]+b[i];
if(a[i]>=10)
{
a[i+1]=a[i+1]+1;
a[i]=a[i]-10;
}
}--------------------------------------------------------------//用for循环来进行a,b两数组的加法
if(a[z]!=0)---------------------------------------------------//判断最高位有没有进位
z++;
for(i=z-1;i>=0;i--)-----------------------------------------//倒序输出最后所得答案
printf("%d",a[i]);
return 0;
}
本程序是由“QinJianCDQZ”老师的谆谆教诲,让我受益终身,但也经自己的双手来敲打一个一个字母所得,我会在c语言的道路上越走越远,得到更好的成绩。耶耶耶耶耶耶耶耶。
---------------------------by 陈涛
a+b(高精度)[陈涛]——c语言的更多相关文章
- P2142_高精度减法(JAVA语言)
思路:BigInteger double kill! //四行搞定 题目描述 高精度减法 输入输出格式 输入格式: 两个整数a,b(第二个可能比第一个大) 输出格式: 结果(是负数要输出负号) 输入输 ...
- C语言隐式强制类型转换
今天又被精度问题困扰,把最基本的东西忘了. int n = 5; int cnt = 5.5; double sum = (n-cnt); 运算完后sum是 -0.5.不知道什么时候n转换成doub ...
- C语言高精度乘法
#include <stdio.h> void highPrecision (int N ); ] = {, }, length = ; //开辟一个大的数组,全局变量length记录长度 ...
- C++11——chrono库开发高精度计!我们可能学的不是同一门语言~
一.前言 在我们写程序过程中,有时候需要测试我们的程序语句执行时间的耗时,当前也是有很多的库提供我们去使用,一直没有良好的跨平台的库可以提供出来:而且一般这种代码也是由我们程序员自己调用系统的库来进行 ...
- C语言 · 高精度加法
问题描述 输入两个整数a和b,输出这两个整数的和.a和b都不超过100位. 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储.对于这种问题,一般使用数组来处理. 定义一个数组A ...
- 程序设计入门——C语言 第5周编程练习 1高精度小数(10分)
1 高精度小数(10分) 题目内容: 由于计算机内部表达方式的限制,浮点运算都有精度问题,为了得到高精度的计算结果,就需要自己设计实现方法. (0,1)之间的任何浮点数都可以表达为两个正整数的商,为了 ...
- C语言 · 高精度乘法
算法提高 高精度乘法 时间限制:1.0s 内存限制:256.0MB 问题描述 在C/C++语言中,整型所能表示的范围一般为-231到231(大约21亿),即使long long型,一 ...
- K型热电耦高精度分段线性拟合(C语言)
extern float GetTempOfVolMi(float V){ float K,B; if(0.03947 <= V < 2.02308) //0~50 { K = 24.7 ...
- 高精度处理斐波那契序列(C语言)
#include<stdio.h> #include<string.h> //memset,strcpy,strlen函数头文件 int main(void) { ];//用来 ...
随机推荐
- FZU 2213 Common Tangents 第六届福建省赛
题目链接:http://acm.fzu.edu.cn/problem.php?pid=2213 题目大意:两个圆,并且知道两个圆的圆心和半径,求这两个圆共同的切线有多少条,若有无数条,输出-1,其他条 ...
- Android项目开发全程(四)-- 将网络返回的json字符串轻松转换成listview列表
前面几篇博文介绍了从项目搭建到获取网络字符串,对一个项目的前期整体工作进行了详细的介绍,本篇接着上篇介绍一下怎么样优雅将网络返回的json字符串轻松转换成listview列表. 先上图,看一下效果. ...
- 网络基础(一)ARP!!!
ARP,Address Resolution Protocol,地址解析协议,用于IP到MAC地址的映射(知道ip得到mac),实现数据的封装过程.ARP是在Ethernet以上,所以是属于网络层 ...
- mysql 备份与还原
http://dev.yesky.com/281/35291281.shtml 每一种逻辑错误发生的概率都极低,但是当多种可能性叠加的时候,小概率事件就 放大成很大的安全隐患,这时候备份的必要性就凸显 ...
- head frist 设计模式学习之 JVM中的博物馆奇妙夜(观察者模式)
博物馆奇妙夜! 博物馆奇妙夜!博物馆奇妙夜!重说三!!!JVM看了<博物馆奇妙夜>电影之后,决定在自己家里开一个博物馆!毕竟需要什么new一下就好,博物馆很快就开起来了,并且任命你为馆长( ...
- Struct标签
通用标签: 1. property 2. set i. 默认为action scope,会将值放入request和ActionContext中 ii. ...
- POJ 3125 Printer Queue
题目: Description The only printer in the computer science students' union is experiencing an extremel ...
- hdu1698(线段树的区间替换)
HDU1698 #include <bits/stdc++.h> using namespace std; #define Maxn 1001000*4 struct Node{ int ...
- Java学习——数据类型【2】
1. 对象与类 对象:类的一个实例,有状态和行为. 类:一个模板,描述一类对象的行状态和行为. 2. 类可以包含的变量 类型 局部变量 成员变量 类变量(静态变量) 定义位置 方法.或语句块中 类中, ...
- Java内存区域 - 深入Java虚拟机读后总结
Java虚拟机在执行Java程序的过程中会把所管理的内存划分为若干个不同的数据区域,这些区域有各自的用途,有各自的创建时间和销毁时间,有的区域随着虚拟机进程的启动而存在,有的区域则是依赖用户线程的启动 ...