手机版

实验报告封皮(2)

发布时间:2021-06-08   来源:未知    
字号:

实验报告封皮

1. 实验目的:掌握线性链表的存储、运算及应用。利用链表实现一元多项式

计算。

2. 实验内容:

1)

2)

3)

4) 编写函数,实现用链表结构建立多项式; 编写函数,实现多项式的加法运算; 编写函数,实现多项式的显示; 测试:编写主函数,它定义并建立两个多项式,显示两个多项式,然

后将它们相加并显示结果。变换测试用的多项式,检查程序的执行结

果。

选做内容:修改程序,选择实现以下功能:

5) 多项式求值:编写一个函数,根据给定的x值计算并返回多项式f(x)

的值。测试该函数(从终端输入一个x的值,调用该函数并显示返回

结果)。

6) 多项式相减:编写一个函数,求两个多项式相减的多项式。

7) 多项式相乘:编写一个函数,求两个多项式的乘积多项式。

3. 算法说明:

1) 多项式的建立、显示和相加算法见讲义。可修改显示函数,使输出的

多项式更符合表达规范。

2) 多项式减法:同次项的系数相减(缺项的系数是0)。例如

a(x)=-5x2+2x+3,b(x)= -4x3+3x,则a(x)-b(x) =4x3-5x2-x+3。提示:a(x)-b(x)

= a(x)+(-b(x))。

3) 多项式乘法:两个多项式的相乘是“系数相乘,指数相加”。算法思想

是用一个多项式中的各项分别与另一个多项式相乘,形成多个多项式,

2再将它们累加在一起。例如,a(x)=-5x+2x+3,b(x)=-4x3+3x,则a(x)*b(x)

= (-4x3)*(-5x2+2x+3)+(3x)*(-5x2+2x+3) = (20x5-8x4-12x3) +

(-15x3+6x2+9x) = 20x5-8x4-27x3+6x2+9x。

4. 程序清单:

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

typedef struct polynode

{ float coef; //系数

int exp; //指数

struct polynode *next; //下一个结点指针

} PNode;

void PrintPoly(PNode *h) //输出多项式。修改此算法,使输出形式更符合自然表达规 范

{

PNode *p=h->next;

实验报告封皮(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)