该用户从未签到
|
这道题目不会啊,帮我编哦,要用C语言的,先在这说谢谢了 & [! ]& F$ S" ]+ ?
; c! Z) i2 ^3 r6 }: {: [- g
0 W1 K* m" B0 b& J/ G4 x课程设计题目:长整数四则运算。9 f0 @7 P& `3 Y8 o0 o& m: c/ E
问题描述:设计一个实现任意长的整数进行加法运算的演示程序。# q9 @$ R- Q/ ?
基本要求:利用双向循环链表实现长整数的存储,每个结点含一个整形变量。任何整形变量的范围是 -(2^15 - 1)~(2^15 - 1)。输入和输出形式:按中国对于长整数的表示习惯,每四位一组,组间用逗号隔开。
! X0 \2 R! O( V. K% P& g& V$ h测试数据:
_8 ~+ k% B* A' b(1)0;0;应输出“0”。
% |. H; T w! F+ h2 d(2)-2345,6789;-7654,3211;应输出“-1,0000,0000”。
( e+ S7 F( R; a$ \( x4 U) o, r* g9 t (3)-9999,9999;1,0000,0000,0000;应输出“9999,0000,0001”。
; N5 f) y9 M& H9 t X (4)1,0001,0001;-1,0001,0001;应输出“0”。
7 b) U, B. o8 _; h(5)1,0001,0001;-1,0001,0000;应输出“1”。
$ v7 N) [6 g: k9 ?( |: O! J( C (6)-9999,9999,9999;-9999,9999,9999;应输出“1,9999,9999,9998”。
1 F6 p. N% g/ A" {$ V: x; ?(7)1,0000,9999,9999;1;应输出“1,0001,0000,0000”。0 b& {0 y; P6 |
实现提示:
V/ ~1 e+ X: B& C(1)每个结点中可以存放的最大整数为32767,才能保证两数相加不会溢出,但若这样存放,即相当于按32768进制存放,在十进制与32768进制数之间的转换十分不方便,故可以在每个结点中仅存十进制的4位,即不超过9999的非负整数,整个链表表示为万进制。
6 Y' p2 a, ^- b2 n3 Q8 Q2 L(2)可以利用头结点数据域的符号代表长整数的符号。用其绝对值表示元素结8 x8 R# U1 j7 g, y4 e& F8 b
: M! ~4 f+ i0 ^" D- M
点数目。相加过程中不要破坏两个操作数链表。两操作数的头指针存于指针数组中是简化程序结构的一种方法。不能给长整数位数规定上限。 |
|