输入格式:
输入在第一行给出第一个多项式POLYA的系数和指数,并以0,0 结束第一个多项式的输入;
在第二行出第一个多项式POLYB的系数和指数,并以0,0 结束第一个多项式的输入。
输出格式:
对每一组输入,在一行中输出POLYA+POLYB和多项式的系数和指数。
输入样例:
5,0 2,1 1,6 8,15 0,0
-2,1 3,6 4,8 0,0
输出样例:
5,0 4,6 4,8 8,15
分析
首先要进行头文件的说明和结构体的定义
#include<stdio.h>
#include<stdlib.h>
typedef struct Node
{
float ratio; //系数
int index; //指数
struct Node *next; //下一个指针域
}*PNode,*LinkList;
实现链表的构造和创建
LinkList Create_Link()
{
LinkList head;
PNode p,q;
float ratio;//系数
int index;//指数
//创建空链表
head=(struct Node*)malloc(sizeof(struct Node));
head->next=NULL;
q=head;
scanf("%f %d",&ratio,&index);
while(ratio!=0 || index!=0)//结束条件是系数和指数同时为0
{
p=(struct Node*)malloc(sizeof(struct Node));//给新结点分配空间
p->next=NULL;
//采用尾插法的方式插入新的结点
q->next=p;
q=p;
p->index=index;
p->ratio=ratio;
scanf("%f %d",&ratio,&index);
}
return head;
}