没有合适的资源?快使用搜索试试~ 我知道了~
数据结构课程设计-一元多项式加法、减法、乘法运算的实现.doc
1 下载量 17 浏览量
2022-11-28
22:00:34
上传
评论 2
收藏 142KB DOC 举报
温馨提示
试读
32页
数据结构课程设计-一元多项式加法、减法、乘法运算的实现.doc
资源推荐
资源详情
资源评论
.
.
. .word..
1.一元多项式加法、减法、乘法运算的实现
1.1 设计内容及要求
1)设计内容
(1)使用顺序存储结构实现多项式加、减、乘运算。
例如:
10321058)(
2456
������ xxxxxxf
,
xxxxxxg �����
2345
1020107)(
求和结果:
102220128)()(
2356
������ xxxxxgxf
(2)使用链式存储结构实现多项式加、减、乘运算,
10305100)(
1050100
���� xxxxf
,
xxxxxxg 320405150)(
10205090
�����
求和结果:
1031040150100)()(
102090100
������� xxxxxxgxf
2)设计要求
(1)用 C 语言编程实现上述实验内容中的结构定义和算法。
(2)要有 main()函数,并且在 main()函数中使用检测数据调用上述算法。
(3)用 switch 语句设计如下选择式菜单。
***************数据结构综合性实验****************
*******一、多项式的加法、减法、乘法运算**********
******* 1.多项式创建 **********
******* 2.多项式相加 **********
******* 3.多项式相减 **********
******* 4.多项式相乘 **********
******* 5.清空多项式 **********
******* 0.退出系统 **********
.
.
. .word..
******* 请选择(0—5) **********
*************************************************
*请选择(0-5):
1.2 数据结构设计
根据下面给出的存储结构定义:
#define MAXSIZE 20 //定义线性表最大容量
//定义多项式项数据类型
typedef struct
{
float coef; //系数
int expn; //指数
}term,elemType;
typedef struct
{
term terms[MAXSIZE]; //线性表中数组元素
int last; //指向线性表中最后一个元素位置
}SeqList;
typedef SeqList polynomial;
1.3 基本操作函数说明
.
.
. .word..
polynomial*Init_Polynomial();
//初始化空的多项式
int PloynStatus(polynomial*p)
//判断多项式的状态
int Location_Element(polynomial*p,term x)
在多项式 p 中查找与 x 项指数相同的项是否存在
int Insert_ElementByOrder(polynomial*p,term x)
//在多项式 p 中插入一个指数项 x
int CreatePolyn(polynomial*P,int m)
//输入 m 项系数和指数,建立表示一元多项式的有序表 p
char pare(term term1,term term2)
//比较指数项 term1 和指数项 term2
polynomial*addPloyn(polynomial*p1,polynomial*p2)
//将多项式 p1 和多项式 p2 相加,生成一个新的多项式
polynomial*subStractPloyn(polynomial*p1,polynomial*p2)
//多项式 p1 和多项式 p2 相减,生成一个新的多项式
polynomial*mulitPloyn(polynomial*p1,polynomial*p2)
//多项式 p1 和多项式 p2 相乘,生成一个新的多项式
void printPloyn(polynomial*p)
//输出在顺序存储结构的多项式 p
1.4 程序源代码
.
.
. .word..
#include<stdlib.h>
#include<stdio.h>
#include<iostream.h>
#define NULL 0
#define MAXSIZE 20
typedef struct
{
float coef;
int expn;
}term,elemType;
typedef struct
{
term terms[MAXSIZE];
int last;
}SeqList;
typedef SeqList polynomial;
void printPloyn(polynomial*p);
int PloynStatus(polynomial*p)
.
.
. .word..
{
if(p==NULL)
{
return -1;
}
else if(p->last==-1)
{
return 0;
}
else
{
return 1;
}
}
polynomial*Init_Polynomial()
{
polynomial*P;
P=new polynomial;
if(P!=NULL)
{
P->last=-1;
return P;
剩余31页未读,继续阅读
资源评论
智慧安全方案
- 粉丝: 3607
- 资源: 59万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功