多项式相加、相乘 程序设计类课程报告.doc

多项式相加、相乘 程序设计类课程报告.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 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

文档评论(0)

ctuorn0371 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档