📄 main.cpp
字号:
#include "iostream.h"
#include<stdio.h>
#define NULL 0
typedef struct Lnode{
int coef,exp; //系数,指数
Lnode *next;
}Lnode,*Linklist;
void input(Linklist &la,Linklist &lb){
Linklist p=la,q=lb,r;
printf("输入多项式一的系数和指数:");
while(1){
scanf("%d,%d",&p->coef,&p->exp);
if(!p->exp){
p->next=NULL;
break;
}
r=new Lnode;
p->next=r;
p=r;
}
printf("输入多项式二的指数和系数:");
while(1){
scanf("%d,%d",&q->coef,&q->exp);
if(!q->exp){
q->next=NULL;
break;
}
r=new Lnode;
q->next=r;
q=r;
}
}
////////////////////////////////////////////////////////////
void Add(Linklist &L,int coef,int exp){
Linklist p=new Lnode;
L->coef=coef;
L->exp=exp;
L->next=p;
L=p;
}
/////////////////////////////////////////////////////////////
void Addpoly(Linklist la,Linklist lb,Linklist &lc){
Linklist p=la,q=lb,r=lc=new Lnode;
int s;
while(p&&q){
if(p->exp<q->exp){
Add(r,q->coef,q->exp);
q=q->next;
}
else
if(p->exp>q->exp){
Add(r,p->coef,p->exp);
p=p->next;
}
else{
s=p->coef+q->coef;
if(s)
Add(r,s,p->exp);
p=p->next;
q=q->next;
}
}
while(p){
Add(r,p->coef,p->exp);
p=p->next;
}
while(q){
Add(r,q->coef,q->exp);
q=q->next;
}
r->next=NULL;
}
void Display(Linklist lc){
Linklist p=lc;
printf("两个多项式相加的结果为:");
while(p->next){
printf("%d,%d ",p->coef,p->exp);
p=p->next;
}
}
void main(){
Linklist la=new Lnode,lb=new Lnode,lc;
input(la,lb);
Addpoly(la,lb,lc);
Display(lc);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -