- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
多项式相加、相乘 程序设计类课程报告
福建农林大学计算机与信息学院
(程序设计类课程)
实验报告
课程名称: 姓 名: 系: 专 业: 年 级: 学 号: 指导教师: 职 称:
福建农林大学计算机与信息学院实验报告
系: 计算机 专业: 计算机科学与技术 年级:
姓名: 学号: 实验室号____ 计算机号
实验一 线性表及其应用(多项式相加、相乘)
实验目的和要求
熟悉tc的运行环境,并可以熟练的使用tc;
2、掌握链表存储的方法以及基本操作;
3、掌握内存的动态分配和释放方法;
4、熟悉C语言程序的基本格式与规范。
实验内容和原理
1、实验内容:
设计一个一元多项式的简单计算程序,其基本功能有:(1)输入并建立多项式;(2)输出多项式;(3)多项式的相加减;(4)多项式的相乘。利用单链表实现。
2、实验原理:
将两多项式存入链表lianbiao1、lianbiao2,用pointer1扫描lianbiao1,pointer2扫描lianbiao2,结果保存在lianbiao3中(用pointer3来创建lianbiao3)
实验环境
硬件:
(1)学生用微机
(2)多媒体实验教室
(3)局域网环境
软件:
(1)Windows XP中文操作系统
(2)Turbo C 3.0
算法描述及实验步骤
1、描述
定义创建链表的函数,然后创建三个链表,一个用于存放结果。
定义多项式相加的函数实现多项式的相加功能,定义多项式的相乘功能。
定义打印链表和释放链表的函数。
最后在主函数里面调用这些函数,实现多项式的相加和相乘。
例子:A(X)=3X+7X6-9X9 B(X)=2X-3+7-3X+8X3+X5
(1)执行加法操作,输出“lianbiao1+lianbiao2:(2,-3) (7,0) (8,5) (1,5) (7,6) (-9,9)”
(2)执行乘法操作,输出“lianbiao1*lianbiao2:(6,-2) (21,1) (-9,2) (14,3) (55,6) (3,6) (-21,7) (-63,9) (27,10) (56,11) (7,11) (-72,14) (-9,14)”
2、框图
3、代码(注释)
#include stdio.h /* 输入输出*/
#include alloc.h /* alloc.h是动态{
int c,e; /*c是指多项式的系数, e是项的指数*/
struct node *next; /* 定义next为指向下一个结点的指针*/}Pn; /*定义类型*/
Pn *create() /*创建链表*/
{
Pn *pointer,*lianbiao;
int n;
lianbiao=malloc(sizeof(Pn)); /*用malloc动态分配函数给链表分配内存空间*/
printf(n:); /*提示用户输入多项式的项数*/
scanf(%d,n); /*接收用户输入的多项式的项数*/
pointer=lianbiao;
while(n) /*对n进行判断,当n不为零时执行while循环语句*/
{
pointer-next=malloc(sizeof(Pn)); /*为链表新的节点申请空间*/
pointer=pointer-next; /*将pointer下移*/
printf(c e:);
scanf(%d %d,pointer-c,pointer-e); /*将系数c,指数e存入链表中的新节点*/
n--; /*没当输入一项时,项数n就减一*/
}
pointer-next=NULL; /*如果pointer指向的下一个结点的指针域为空,说明链表已经创建好了*/
return lianbiao;
}
void OUT(Pn *lianbiao) /*打印输出链表*/
{
Pn *pointer=lianbiao-next;
while(pointer) /*打印出当前的结点系数c和指数e, 直到链表为空*/
{
printf((%d,%d) ,pointer-c,pointer-e); /*打印出多项式系数c和指数e*/
pointer=pointer-next; /*打印出当前结点后,将指针移到下一个节点*/
}
printf(\n); /*用\n换行*/
}
void Fre
您可能关注的文档
- 冲压件模具设计 模具专业毕业设计 毕业论文.doc
- 天水路工程施工中的测量工作 测绘工程技术专业毕业设计 毕业论文.doc
- 煤矿生产物流信息化问题研究 物流专业毕业设计 毕业论文.doc
- C6160卧式车床数控化改造设计 数控车床毕业设计文献综述.doc
- 便携式调制叶绿素荧光仪PAM2100中文操作手册.pdf
- Dreamweaver学习网站的设计与开发 网络工程专业毕业设计 毕业论文.doc
- 基于交流双馈电机的提升机可逆交-直-交变频调速系统设计 电气工程专业毕业设计 毕业论文.doc
- 数据结构课程设计-校园导航.doc
- 善意取得制度的客体之我见 律师本科专业毕业设计 毕业论文.doc
- 江西永丰县城污水处理工程设计 环境工程专业毕业设计 毕业论文.doc
文档评论(0)