




如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
实验报告 课程名称____数据结构上机实验__________ 实验项目______线性表的应用____________ 实验仪器________PC机___________________ 系别_____电子信息与通信学院___ 专业___________ 班级/学号________ 学生姓名_________________ 实验日期_______________________ 成绩_______________________ 指导教师_______________________ 线性表的应用 实验目的:掌握线性链表的存储、运算及应用。利用链表实现一元多项式计算。 实验内容: 编写函数,实现用链表结构建立多项式; 编写函数,实现多项式的加法运算; 编写函数,实现多项式的显示; 测试:编写主函数,它定义并建立两个多项式,显示两个多项式,然后将它们相加并显示结果。变换测试用的多项式,检查程序的执行结果。 选做内容:修改程序,选择实现以下功能: 多项式求值:编写一个函数,根据给定的x值计算并返回多项式f(x)的值。测试该函数(从终端输入一个x的值,调用该函数并显示返回结果)。 多项式相减:编写一个函数,求两个多项式相减的多项式。 多项式相乘:编写一个函数,求两个多项式的乘积多项式。 算法说明: 多项式的建立、显示和相加算法见讲义。可修改显示函数,使输出的多项式更符合表达规范。 多项式减法:同次项的系数相减(缺项的系数是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))。 多项式乘法:两个多项式的相乘是“系数相乘,指数相加”。算法思想是用一个多项式中的各项分别与另一个多项式相乘,形成多个多项式,再将它们累加在一起。例如,a(x)=-5x2+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。 实验步骤: 根据实验报告的要求,我对文件夹里的C文件进行了丰富和修改,步骤如下: 链表结构建立多项式: typedefstructpolynode {floatcoef;//系数 intexp;//指数 structpolynode*next;//下一结点指针 }PNode; 编写函数,实现多项式的加法运算; PNode*PolyAdd(PNode*f1,PNode*f2)//实现加法功能。 {//实现两多项式(头指针分别为f1和f2)相加,返回和多项式f3=f1+f2。 PNode*pa=f1->next,*pb=f2->next,*pc,*f3,*q; intexp; floatcoef; f3=(PNode*)malloc(sizeof(PNode));//建立头指针 f3->exp=-1;//对头指针初始化 f3->next=f3; pc=f3;//将pc指向头指针 while(pa->exp!=-1||pb->exp!=-1)//返回头指针时,跳出循环 { if(pa->exp>pb->exp) { exp=pa->exp; coef=pa->coef; pa=pa->next; } elseif(pa->exp<pb->exp) { exp=pb->exp; coef=pb->coef; pb=pb->next; } else { exp=pa->exp; coef=pa->coef+pb->coef; pa=pa->next; pb=pb->next; } if(coef!=0) { q=(PNode*)malloc(sizeof(PNode));//建立新的q指针存放负指数的指针 q->exp=exp; q->coef=coef;//将q插入链表中 q->next=pc->next; pc->next=q; pc=q; } } returnf3;//返回 } 实现多项式的显示; voidShowPloy(PNode*h) //用if语句判断,当指数为0是,只输出系数;当指数为1时,输出系数和X;当系数为1时,输出X和指数。 { h=paixu(h);//整理函数,使之降幂排列 PNode*p=h->next; if(p==h) { printf("表达式为空\n"); return; } i

王子****青蛙
实名认证
内容提供者


最近下载
最新上传
浙江省宁波市2024-2025学年高三下学期4月高考模拟考试语文试题及参考答案.docx
汤成难《漂浮于万有引力中的房屋》阅读答案.docx
四川省达州市普通高中2025届第二次诊断性检测语文试卷及参考答案.docx
山西省吕梁市2025年高三下学期第二次模拟考试语文试题及参考答案.docx
山西省部分学校2024-2025学年高二下学期3月月考语文试题及参考答案.docx
山西省2025年届高考考前适应性测试(冲刺卷)语文试卷及参考答案.docx
全国各地市语文中考真题名著阅读分类汇编.docx
七年级历史下册易混易错84条.docx
湖北省2024-2025学年高一下学期4月期中联考语文试题及参考答案.docx
黑龙江省大庆市2025届高三第三次教学质量检测语文试卷及参考答案.docx