超长正整数加法和乘法报告书

超长正整数加法和乘法报告书

ID:38528667

大小:465.54 KB

页数:19页

时间:2019-06-14

超长正整数加法和乘法报告书_第1页
超长正整数加法和乘法报告书_第2页
超长正整数加法和乘法报告书_第3页
超长正整数加法和乘法报告书_第4页
超长正整数加法和乘法报告书_第5页
资源描述:

《超长正整数加法和乘法报告书》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、数据结构与C语言综合训练实习报告信息工程学院数据结构与C语言综合训练报告(2011~2012学年第二学期)报告题目:____超长正整数的加法________姓名:______李莉_______专业:信息管理与信息系统年级班级:____112班________指导教师:__李宏利、张晶___完成日期:_2012年7月12日数据结构与C语言综合训练实习报告一、综合训练目的和要求本综合训练是计算机科学与技术、信息管理与信息系统、软件工程、电子商务专业重要的实践性环节之一,是在学生学习完《程序设计语言(C)》、《数据结构》课程后进

2、行的一次全面的综合练习。本课综合训练的目的和任务:1.巩固和加深学生对C语言、数据结构课程的基本知识的理解和掌握2.掌握C语言编程和程序调试的基本技能3.利用C语言进行基本的软件设计4.掌握书写程序设计说明文档的能力5.提高运用C语言、数据结构解决实际问题的能力二、综合训练任务内容利用双向循环链表,设计一个实现任意长的整数进行加法运算的演示程序。要求输入和输出每四位一组,组间用逗号隔开。如:1,0000,0000,0000,0000。提高要求:完成两个超长正整数的乘法。三、总体设计函数调用关系图(如下)mainInput(

3、)Change()Mul()Sum()Add()Output()17数据结构与C语言综合训练实习报告函数的流程图(如下)YNYNNY开始m=0操作说明输入字符串a[]Input()n=N输入n输入字符串b[]Input()n=N’输入nChange(a)Change(b)输入mMul()Add()Output()Output()17数据结构与C语言综合训练实习报告结束四、详细设计说明主函数模块包括判断函数输入模式是否正确的模块,输入转换模块,数值计算模块和输出模块。在主函数中首先调用函数Input(),然后调用到函数Cha

4、nge(),在Change()函数中调用了函数Sum(),随后主函数中又根据操作者调用了函数Add()或者函数Mul(),最后主函数调用了函数Output()后程序结束。其中,函数Input()的作用是判断操作者输入的数据格式是否正确,其中参数是字符型的数组;函数Change()的作用是将字符串分节转变为整型数,并存入链表中。其中,每两个逗号之间的数字字符转化为一个整型数存入一个节点中,每个整型数最多4位。一个链表由多个整型数表示,一个链表表示一个超长正整数。参数是字符型的数组,返回值是节点类型的头节点;函数Sum()的作

5、用是表示一个以十为底的指数函数。参数是整型,返回值是整型;函数Add()的作用是计算两个超长正整数的加法。参数是两个节点类型的头节点,返回值是一个节点类型的头节点;函数Mul()的作用是计算两个超长正整数的乘法。参数是两个节点类型的头节点,返回值是一个节点类型的头节点;函数Output()的作用是将所得的结果链表输出。参数是一个节点类型的头节点。五、软件使用说明第一,现根据提示输入一个字符串形如“**,****,****,****”如图,第二,若不小心输入的字符串格式不正确,则根据提示进行下一步,如图,17数据结构与C语言

6、综合训练实习报告第三,输入Y,重新输入数据。第四,输入数据,如56,6000;第五,输入N,继续程序;17数据结构与C语言综合训练实习报告第六,输入b,如,12,1265第七,根据自己情况选择。若需算两数加法则输入0后按下回车键后出结果,若需算两数乘法法输入1后按回车键出结果;如图,计算两数加法:六、调试与测试调试方法:编译链接,debug17数据结构与C语言综合训练实习报告测试结果分析:0与0的加法与乘法0与任意一个数的乘法:1326,9543与54,0054,4494的加法与乘法17数据结构与C语言综合训练实习报告2,

7、0000,4356与1,0001,0003,9600,5600的加法与乘法测试过程中遇到的主要问题及采取的措施:编译链接后出现的错误注意与提示对照解决。如.节点的申请没有与节点类型相照应、17数据结构与C语言综合训练实习报告输入分号时用了中文输入法输入等。在编译链接没错之后,输入具体数据进行测试,若有错,则用debug一点一点找出出错点然后进行改正。在用具体数据测试时,发现在乘法中出错居多,有的是没有把情况考虑完全,忘了申请新的节点,后又加上。还有是进入了死循环,后根据出错点,发现是因为限制条件写的不正确,然后根据具体的函

8、数又加了新的限制条件后正确了。在起初编的程序里,乘法函数用的方法很占内存,后又根据老师提示的思路改正了方法,内存得到了很大的节约。七、工作日志7月5日选题,并思考两超长正整数加法的思路,且尝试写一些加法要用到的小程序如Sum()函数。7月6日开始编写计算两数的加法与乘法之前所需的函数,如Change()

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。