课程设计报告数据结构课程设计长整数加减运算一、需求分析设计一个实现任意长的整数间进行四则运算的程序,要求完成长整数的加运算和减运算
长整数的长度没有限制,可以是任意长
正确处理好运算之后的进位和借位
(1)输入:[-]**,****,****;[-]*,****,****,****//[-]表示“-”可选(2)输出:**,****,****,****是否继续计算(Y/N):(3)功能:能正确进行相关数据的加减运算(4)测试数据:0;0;输出“0”2345,6789;7654,3211;输出“1,0000,0000”1,0000,0000,0000;-9999,9999;输出“9999,0000,0001”1,0001,00001;-1,0001,0000;输出“0”自选数据二、概要设计1、使用双向循环链表实现长整数的运算及存储,构造双向循环链表,创建双向循环链表表示两个整数2、设计两整数相加的函数Add(),addtwo(),其中Add()调用addtwo()函数,addtwo()具体实现两个整数的加减操作,进位及借位问题;设计显示函数Display()及主函数main()三、详细设计1、数据结构设计双向循环链表的构造typedefstructLinkNode{intdata;//记录每个节点的整数(小于)LinkNode*next,*pre;//记录下一个节点的地址和前一个节点的地址}linklist;2、创建两个长整数的链表伪算法voidCreat(chara[])//引入字符串,创立两个链表,分别表示两个整数{int记录字符串i;记录加数节点数j;记录被加数节点数s;标记字符串中的‘-’号记录字符串中的字符转化为整数的值k,使每个节点记录位lwhile(指针所指不是“;”)被加数字符数m自动加1//m记录字符串中被加数的字符数n=m;while(执政没有指到结尾处)总