兴海北路

---男儿仗剑自横行
<2008年3月>
2425262728291
2345678
9101112131415
16171819202122
23242526272829
303112345

统计

  • 随笔 - 85
  • 文章 - 0
  • 评论 - 17
  • 引用 - 0

常用链接

留言簿(6)

随笔分类

随笔档案

收藏夹

全是知识啊

搜索

  •  

最新评论

阅读排行榜

评论排行榜

用c写个大数求和的程序
作者: falcon   发表日期: 2006-05-31 18:46   复制链接



先说一下思路哦:

1)先从键盘屏幕接收两个大数,按字符串存放到字符数组中。
2)
初始化进位为0
然后从两个字符数组中分别取出最后一个字符(数字)开始来求和
一直求和到字符串长度较小的最小下标处停止
结果保存较大数字所存放的字符数组中
(说明:
如果结果大于106,那么结果减去58存入,并记录进位为1
否则,结果减去48存入,并记录进位为0

3)如果两个数字的位数不相同,那么需要求出最后一位可能的进位
比如5+96=101
4)进位为1,那么和之前需要输出一个1
5)输出两个大数的和

下面是具体代码


Code:

[Ctrl+A Select All]



补充:在ubuntu下用gcc编译通过
部分演示结果

falcon@falcon:~/program/c/code/mylove$ gcc -o add_LN add_LN.c
falcon@falcon:~/program/c/code/mylove$ ./add_LN
Please input two Large Number less than 10000 bit
5
6
两数之和为:
11
falcon@falcon:~/program/c/code/mylove$ ./add_LN
Please input two Large Number less than 10000 bit
877848515165484151
996527784841515184
两数之和为:
1874376300006999335
falcon@falcon:~/program/c/code/mylove$ ./add_LN
Please input two Large Number less than 10000 bit
8995951
784784987951252178485215254798749874984185416845865215187484520512
两数之和为:
784784987951252178485215254798749874984185416845865215187493516463
falcon@falcon:~/program/c/code/mylove$ ./add_LN
Please input two Large Number less than 10000 bit
5
96
两数之和为:
101

guest 发表于 2007-11-20 23:38
#2

你的C语言代码有点小错误!就是在那段:
    if(equal==0)
    {
        Temp=LN[flag1][LN_Len[flag1]+i]+jw;
        if(Temp>=58)
        {
              jw=1;
              LN[flag1][LN_Len[flag1]+i]=Temp-10;
        }
        else
        {
              jw=0;
              LN[flag1][LN_Len[flag1]+i]=Temp;
        }
                 
    }

缺少了对一直有进位即JW=1时候的累加!应该加上个while循环:
    if(equal==0)
    {
              while(j>0 && jw==1)
              {
        Temp=LN[flag1][j+i]+jw;
        if(Temp>=58)
        {
              jw=1;
              LN[flag1][j+i]=Temp-10;
        }
        else
        {
              jw=0;
              LN[flag1][j+i]=Temp;
        }
                 j--;
              }

并且初始j=LN_Len[flag1]

欢迎访问blog.sina.com.cn/Fanmcgrady与我交流!呵呵~~谢谢你的帮助!

posted on 2008-03-14 16:02 随意门 阅读(540) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理