#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语言的更多相关文章

  1. P2142_高精度减法(JAVA语言)

    思路:BigInteger double kill! //四行搞定 题目描述 高精度减法 输入输出格式 输入格式: 两个整数a,b(第二个可能比第一个大) 输出格式: 结果(是负数要输出负号) 输入输 ...

  2. C语言隐式强制类型转换

    今天又被精度问题困扰,把最基本的东西忘了. int n = 5; int cnt = 5.5; double sum = (n-cnt);  运算完后sum是 -0.5.不知道什么时候n转换成doub ...

  3. C语言高精度乘法

    #include <stdio.h> void highPrecision (int N ); ] = {, }, length = ; //开辟一个大的数组,全局变量length记录长度 ...

  4. C++11——chrono库开发高精度计!我们可能学的不是同一门语言~

    一.前言 在我们写程序过程中,有时候需要测试我们的程序语句执行时间的耗时,当前也是有很多的库提供我们去使用,一直没有良好的跨平台的库可以提供出来:而且一般这种代码也是由我们程序员自己调用系统的库来进行 ...

  5. C语言 · 高精度加法

    问题描述 输入两个整数a和b,输出这两个整数的和.a和b都不超过100位. 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储.对于这种问题,一般使用数组来处理. 定义一个数组A ...

  6. 程序设计入门——C语言 第5周编程练习 1高精度小数(10分)

    1 高精度小数(10分) 题目内容: 由于计算机内部表达方式的限制,浮点运算都有精度问题,为了得到高精度的计算结果,就需要自己设计实现方法. (0,1)之间的任何浮点数都可以表达为两个正整数的商,为了 ...

  7. C语言 · 高精度乘法

    算法提高 高精度乘法   时间限制:1.0s   内存限制:256.0MB      问题描述 在C/C++语言中,整型所能表示的范围一般为-231到231(大约21亿),即使long long型,一 ...

  8. K型热电耦高精度分段线性拟合(C语言)

    extern float GetTempOfVolMi(float V){ float K,B; if(0.03947 <= V < 2.02308) //0~50 {  K = 24.7 ...

  9. 高精度处理斐波那契序列(C语言)

    #include<stdio.h> #include<string.h> //memset,strcpy,strlen函数头文件 int main(void) { ];//用来 ...

随机推荐

  1. lfs遇到的一些问题--准备阶段

    本机宿主系统archlinux,lfs SVN-20130711,参考文档 1.在离开或重新进入当前工作环境 (比如 su 成为 root 或者其他用户) 时不要忘记检查 $LFS 是否设置好. ec ...

  2. 关于list 添加数据到指定下标

    1 2 3 4 5 6 7 8 9 10 11 12 protected <T> List<BusinessItemData> itemMap2ItemList(Map< ...

  3. Centos6.x X64 飞信安装

    Centos6.x X64 飞信安装 1,安装飞信依赖包 yum -y install glibc.i686 krb5-libs.i686 libstdc++.i686 zlib.i686 --set ...

  4. yii 中设置提示成功信息,错误提示信息,警告信息

    方法一: <?php Yii::app()->user->setFlash(‘success’,”Data saved!”); 设置键值名为success的临时信息.在getFlas ...

  5. Y2K Accounting Bug

    题目: Description Accounting for Computer Machinists (ACM) has sufferred from the Y2K bug and lost som ...

  6. Python自动化之session

    request.body 所有请求内容的原生数据 request.META 所有请求头的原生数据 cookie返回存在于响应头里面 session session是保存在服务端的键值对 cookie和 ...

  7. Java中的Stringbuffer类解析

    StringBuffer类和String一样,也用来代表字符串,只是由于StringBuffer的内部实现方式和String不同,所以StringBuffer在进行字符串处理时,不生成新的对象,在内存 ...

  8. Spring Aop实现方式总结

    前面两个文章介绍了Aop及其相关重要概念,下面主要用代码的方式介绍下实现Spring Aop的几种方式 1. 基于注解实现Spring Aop 业务类接口 package cn.test.busine ...

  9. jquery validate.js表单验证的基本用法入门

    这里转载一篇前辈写的文章,在我自己的理解上修改了一下,仅作记录. 先贴一个国内某大公司的代码: 复制代码 代码如下: <script type="text/javascript&quo ...

  10. [Javascript] Immutable opreators

    slice filter map ...spread concat Object.assign let items = [1,2,3]; //add let newItems = [...items, ...