线性表的抽象数据类型的实现

  • Post author:
  • Post category:其他


实验内容(方法和步骤):

设计一个一元稀疏多项式简单计算器。

要求:

(1)输入并建立多项式

(2)输出多项式,输出形式为整数序列:n,c1,e1,c2,e2……,cn,en,其中n为多项式的项数,ci和ei分别为第i项的系数和指数,序列按指数降序排列。

(3)实现两个多项式相加并输出

(4)实现俩个多项式相减并输出

(5)实现两个多项式相乘并输出

代码源码:

实现加减法

#include <stdio.h>

#include <malloc.h>

#define ERROW 0

typedef struct Lnode {


float c;

int e;

struct Lnode* next;

}Lnode;

Lnode *Creat_list();

Lnode *addition(Lnode *head1, Lnode *head2);

Lnode *substraction(Lnode *head1, Lnode *head2);

Lnode *List_insert(Lnode *head,Lnode *p);

void List_Traverse(Lnode *head);

void List_sort();

int main() {


int judge;

Lnode *head1, *head2, *head3;

head1 = Creat_list();

head2 = Creat_list();

head3 = addition(head1, head2);

head4 = substraction(head1, head2);

head5 = Mult(head1,head2);

}

List_Traverse(head3);

List_Traverse(head4);

List_Traverse(head5);

}//main

Lnode *List_insert(Lnode *header, Lnode *p) {


Lnode *rear = NULL;

rear = header;

if (header == NULL) {


header = p;

p->next = NULL;

}//if

if(rear != NULL) {


while (1) {


if (rear->next == NULL) {


break;

}//if

rear = rear->next;

}//while

rear->next = p;

p->next = NULL;



版权声明:本文为Peachen原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。