编程实现若干个多项式相乘。多项式的输入输出格式为:系数在前,指数在后,各项按指数递增排列,每个多项式输入时以两个0结束。系数为0的项不输出。

这篇博客介绍了一个使用C语言实现多项式相乘的算法。通过链表结构存储多项式,实现了输入、输出、相加和相乘操作。多项式输入以系数在前,指数在后的形式,并以两个0结束。程序包括创建多项式、打印输出、释放内存、相加和相乘等功能。
摘要由CSDN通过智能技术生成

/实现n个多项式相乘/
#include “stdio.h”
const int N0=20; //常数: 多项式最多20个

typedef struct node{ //多项式的项(链表节点), 数据包含: 项的系数和指数, 下一项的指针.
int c, e; //c-系数(coefficient); e-指数(exponent)
struct node *next; //下一个多项式项的指针
}NP;

NP *createPoly(){ //创建一个多项式(对应一个多项式链表)
int c, e; //c-系数(coefficient); e-指数(exponent)
NP *head, p; //head-多项式头指针; p-游标指针
head=p=new NP; //初始化多项式的 头指针 & 游标指针
while( true ){
/
(1)输入(获得)多项式’项’的数据[系数+指数]信息 */
scanf("%d%d", &c, &e); //输入多项式项 > 根据输入数据的特点: 系数+指数 紧接着出现!
if( c
0 && e0 ){ //根据约定, 系数 & 指数 都为0, 则多项式输入结束
break;
}else if(c
0){ //此多项式’项’的系数=0, 可以不需要次多项式’项’!
continue;
}

	/*(2)多项式数据项有效, 则创建 多项式'项'(对应于链表节点)*/
	p->next=new NP;
	p=p->next;
	
	/*(3)维护多项式项的数据信息*/
	p->c=c;
	p->e=e;
}
p->next=NULL; //多项式最后一个节点的 "
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值