码迷,mamicode.com
首页 > 其他好文 > 详细

高精度加法

时间:2016-07-07 08:35:28      阅读:169      评论:0      收藏:0      [点我收藏+]

标签:

#include<stdio.h>

#include<string.h>

char s1[1000], s2[1000];//定义字符数组

       int a[1000]={0},b[1000]={0},c[1000]={0};//定义int数组

int main()

{

int l1=0,l2=0,l=0,i;//定义全局变量

scanf("%s",s1); //读S1

scanf("%s",s2);//读S2

l1=strlen(s1); 将s1的长度存到l1里

l2=strlen(s2);将s2的长度存到l2里

for(i=0;i<=l1-1;i++)//for循环倒序存入a数组

{

   a[l1-1-i]=s1[i]-‘0‘;

}

for(i=0;i<=l2-1;i++) for循环倒叙存入b数组

{  

b[l2-1-i]=s2[i]-‘0‘;

}

if(l1>l2) //比较两个变量,将长度长的存入l

l=l1;

else l=l2;

for(i=0;i<=l-1;l++)//for循环做a,b数组的加法

{   c[i]=a[i]+b[i];  //a,b数组之和赋值到c数组里

     if(c[i]>=10)  //判断进位情况

  {  

    c[i+1]=c[i+1]+1;   //进1

    c[i]=c[i]-10; //还10

  }

}

 

     

}

 if(c[l]!=0)   l++; 判断是否结束

 for(i=l-1;i>=0;i--)   //倒序输出

 printf("%d",c[i]);        

 return 0;

}

高精度加法

标签:

原文地址:http://www.cnblogs.com/hxq2003/p/5648695.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!