超长正整数加法和乘法报告方案.doc

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
信息工程学院 数据结构与C语言综合训练报告 (2011~2012学年第 二学期) 报告题目:____超长正整数的加法________ 姓 名:______李莉_______ 专 业:信息管理与信息系统 年级班级: ____112班________ 指导教师:__李宏利、张晶___ 完成日期:_2012年7月12日 一、综合训练目的和要求 本综合训练是计算机科学与技术、信息管理与信息系统、软件工程、电子商务专业重要的实践性环节之一,是在学生学习完《程序设计语言(C)》、《数据结构》课程后进行的一次全面的综合练习。本课综合训练的目的和任务: 1. 巩固和加深学生对C语言、数据结构课程的基本知识的理解和掌握 2. 掌握C语言编程和程序调试的基本技能 3. 利用C语言进行基本的软件设计 4. 掌握书写程序设计说明文档的能力 5. 提高运用C语言、数据结构解决实际问题的能力 二、综合训练任务内容 利用双向循环链表,设计一个实现任意长的整数进行加法运算的演示程序。要求输入和输出每四位一组,组间用逗号隔开。如:1,0000,0000,0000,0000。提高要求: 四、详细设计说明 主函数模块包括判断函数输入模式是否正确的模块,输入转换模块,数值计算模块和输出模块。在主函数中首先调用函数Input(),然后调用到函数Change(),在Change()函数中调用了函数Sum(),随后主函数中又根据操作者调用了函数Add()或者函数Mul(),最后主函数调用了函数Output()后程序结束。其中, 函数Input()的作用是判断操作者输入的数据格式是否正确,其中参数是字符型的数组; 函数Change()的作用是将字符串分节转变为整型数,并存入链表中。其中,每两个逗号之间的数字字符转化为一个整型数存入一个节点中,每个整型数最多4位。一个链表由多个整型数表示,一个链表表示一个超长正整数。参数是字符型的数组,返回值是节点类型的头节点; 函数Sum()的作用是表示一个以十为底的指数函数。参数是整型,返回值是整型; 函数Add()的作用是计算两个超长正整数的加法。参数是两个节点类型的头节点,返回值是一个节点类型的头节点; 函数Mul()的作用是计算两个超长正整数的乘法。参数是两个节点类型的头节点,返回值是一个节点类型的头节点; 函数Output()的作用是将所得的结果链表输出。参数是一个节点类型的头节点。 五、软件使用说明 第一,现根据提示输入一个字符串形如“**,****,****,****”如图, 第二,若不小心输入的字符串格式不正确,则根据提示进行下一步,如图, 第三,输入Y,重新输入数据。 第四,输入数据,如56,6000; 第五,输入N,继续程序; 第六,输入b,如,12,1265 第七,根据自己情况选择。若需算两数加法则输入0后按下回车键后出结果,若需算两数乘法法输入1后按回车键出结果;如图,计算两数加法: 六、调试与测试 调试方法: 编译链接,debug 测试结果分析: 0与0的加法与乘法 0与任意一个数的乘法: 1326,9543与54,0054,4494的加法与乘法 2,0000,4356与1,0001,0003,9600,5600的加法与乘法 测试过程中遇到的主要问题及采取的措施: 编译链接后出现的错误注意与提示对照解决。如.节点的申请没有与节点类型相照应、 输入分号时用了中文输入法输入等。在编译链接没错之后,输入具体数据进行测试,若有错,则用debug一点一点找出出错点然后进行改正。在用具体数据测试时,发现在乘法中出错居多,有的是没有把情况考虑完全,忘了申请新的节点,后又加上。还有是进入了死循环,后根据出错点,发现是因为限制条件写的不正确,然后根据具体的函数又加了新的限制条件后正确了。在起初编的程序里,乘法函数用的方法很占内存,后又根据老师提示的思路改正了方法,内存得到了很大的节约。 七、工作日志 7月5日选题,并思考两超长正整数加法的思路,且尝试写一些加法要用到的小程序如Sum()函数。 7月6日开始编写计算两数的加法与乘法之前所需的函数,如

文档评论(0)

xingyuxiaxiang + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档