《数据结构》任意长的整数加减法运算.docVIP

  • 0
  • 0
  • 约2.3万字
  • 约 34页
  • 2026-01-27 发布于天津
  • 举报

《数据结构》任意长的整数加减法运算.doc

PAGE

PAGE1

《数据结构》任意长的整数加减法运算

1.1任意长的整数加减法运算

题目要求:

设计算法,实现一个任意长的整数进行加法、减法运算的演示程序。例如:1234,5123,4512,3451,2345与-1111,1111,1111,1111,1111的加法结果为:0123,4012,3401,2340,1234。基本要求如下:

利用链表实现长整数的存储,每个节点含一个整型变量;

整型变量的范围:-(2^15-1)~(2^15-1);

输入与输出形式每四位一组,组间用逗号分隔开。如:1986,8213,1935,2736,3299;

界面友好,每步给出适当的操作提示,并且系统具有一定的容错能力。

至少给出下面的测试数据:

(1)0;0

(2)-2345,6789;-7654,3211

(3)-9999,9999;1,0000,0000,0000

(4)1,0001,0001;-1,0001,0001

(5)1,0001,0001;-1,0001,0000

(6)-9999,9999,9999;-9999,9999,9999

(7)1,0000,9999,9999;1

XE

课题需求分析

设计算法,实现一个任意长的整数进行加法、减法运算的演示程序。例如:1234,5123,4512,3451,2345与-1111,1111,1111,1111,1111的加法结果为:0123,4012,3401,2340,1234。基本要求如下:

利用链表实现长整数的存储,每个节点含一个整型变量;

整型变量的范围:-(2^15-1)~(2^15-1);

输入与输出形式每四位一组,组间用逗号分隔开。如:1986,8213,1935,2736,3299;

界面友好,每步给出适当的操作提示,并且系统具有一定的容错能力。

至少给出下面的测试数据:

(1)0;0

(2)-2345,6789;-7654,3211

(3)-9999,9999;1,0000,0000,0000

(4)1,0001,0001;-1,0001,0001

(5)1,0001,0001;-1,0001,0000

(6)-9999,9999,9999;-9999,9999,9999

(7)1,0000,9999,9999;1

【长整数四则运算】

(i)本程序实现计算任意长的整数的加法运算.以用户和计算机对话的方式,即在计算机终端上显示“提示信息”之后,由用户在键盘上输入演示程序中规定的运算命令,然后程序就计算并显示出这两个数的运算。

(ii)本演示程序中,集合的元素限定为数字字符[‘0’~’9’]和字符‘,’与‘;’,输入字符可以任意长,输入形式以“回车符”为结束标志,串中字符顺序不限,且允许出现重复字符。

(iii)利用双向循环链表现实长整数的存储,每个结点含一个整形变量。输入的形式以回车结束,可以直接输入正数或负数。按中国对于长整数的表示习惯,每四位一组,除数字和位于首位置的负号外,其它一切字符都将作为分隔符,连续多个分隔符当一个处理。但不使用分隔符也不影响结果。

(iv)自行定义的测试数据

(1)0;0;输出“0”;

(2)-2345,6789;;-7654,3211;;加法输出“-1,000,000”;

(3)-9999,9999;;1,0000,0000,0000;;加法输出“9999,0000,0001”;

(4)1,0001,0001;;1,0001,0001;减法输出“0”;

(5)1,0001,0001;;1,0001,0000;;减法输出”1”;

(6)-9999,9999,9999;;-9999,9999,9999;加法输出“-1,9999,9999,9998”;

(7)1,0000,9999,9999;1;加法输出1,0001,0000,0000;

(8)10;8;乘方输出1,0000,0000;

-98,9997;3;除法输出-32,9999;

课题概要设计

(一)系统设计方案

(1)菜单

1.输入长整数a

2.输入长整数b

3.a+b

4.a-b

5.b-a

(2)抽象数据类型定义:

#defineMAXQSIZE100//最大队列长度

Typedefstruct{

QElemType*base;//初始化的动态分配存储空间

intfront;//头指针,若队列不为空,指向队列头元素

intrear;//尾指针,若对列不空,指向队尾元素的下一个位置

}SqQueue;

StatusInitQueue(sqQueueQ){

//构造一个空队列Q

文档评论(0)

1亿VIP精品文档

相关文档