📄 多项式的加减运算.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0042)http://vip.6to23.com/dcyu/TurboC/DS/1.html -->
<HTML><HEAD><TITLE>Turbo C</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<STYLE type=text/css>BODY {
SCROLLBAR-FACE-COLOR: #ffffff
}
INPUT {
FONT-SIZE: 12px; FONT-FAMILY: "宋体"
}
INPUT {
FONT-SIZE: 12px; FONT-FAMILY: "宋体"
}
.border {
BORDER-RIGHT: 1px dotted; BORDER-TOP: 1px dotted; BORDER-LEFT: 1px dotted; COLOR: #000000; BORDER-BOTTOM: 1px dotted; BORDER-COLLAPSE: collapse; BACKGROUND-COLOR: #efefef
}
.border {
BORDER-RIGHT: 1px dotted; BORDER-TOP: 1px dotted; BORDER-LEFT: 1px dotted; COLOR: #000000; BORDER-BOTTOM: 1px dotted; BORDER-COLLAPSE: collapse; BACKGROUND-COLOR: #efefef
}
.input {
FONT-SIZE: 9pt; FONT-FAMILY: 宋体,Verdana, Arial, Helvetica, sans-serif
}
.links {
FONT-SIZE: 9pt; COLOR: #000000; FONT-FAMILY: 宋体,Verdana, Arial, Helvetica, sans-serif
}
</STYLE>
<META content="sumipntg 011, default" name="Microsoft Theme">
<META content="MSHTML 6.00.2800.1400" name=GENERATOR></HEAD>
<BODY text=#000066 vLink=#666699 aLink=#990099 link=#3333cc bgColor=#ffffff
background=多项式的加减运算.files/sumtextb.htm>
<P> </P>
<DIV align=center>
<P><BR><A href="http://www.6to23.com/vip/asp/"><BR></A></P>
<TABLE height=24 cellSpacing=0 cellPadding=0 width=689 align=center border=0>
<TBODY>
<TR>
<TD width=94>
<P align=center><FONT color=#0000ff size=2> </FONT><A
href="http://vip.6to23.com/dcyu/TurboC/summarize.html"><FONT color=#0000ff
size=2>概述</FONT></A></P></TD>
<TD width=94>
<P align=center><A
href="http://vip.6to23.com/dcyu/TurboC/basic.html"><FONT color=#0000ff
size=2>初级篇</FONT></A></P></TD>
<TD width=94>
<P align=center><A
href="http://vip.6to23.com/dcyu/TurboC/advance.html"><FONT color=#0000ff
size=2>中级篇</FONT></A></P></TD>
<TD width=94>
<P align=center><A
href="http://vip.6to23.com/dcyu/TurboC/senior.html"><FONT color=#0000ff
size=2>高级篇</FONT></A></P></TD>
<TD width=94>
<P align=center><A
href="http://vip.6to23.com/dcyu/TurboC/sutra.html"><FONT color=#0000ff
size=2>经典篇</FONT></A></P></TD>
<TD width=94>
<P align=center><A
href="http://vip.6to23.com/dcyu/TurboC/algorithm.html"><FONT color=#0000ff
size=2>算法篇</FONT></A></P></TD>
<TD width=94>
<P align=center><FONT size=2> </FONT><A
href="http://vip.6to23.com/dcyu/TurboC/DS.html"><FONT color=#0000ff
size=2><SPAN
style="BACKGROUND-COLOR: #00ff00">数据结构</SPAN></FONT></A></P></TD>
<TD width=100>
<P align=center><A href="http://vip.6to23.com/dcyu/index.html"><FONT
color=#0000ff size=2>回到首页</FONT></A> </P></TD></TR></TBODY></TABLE>
<TABLE height=542 cellSpacing=0 cellPadding=0 width=619 border=0>
<TBODY>
<TR>
<TD vAlign=top width=138 bgColor=#ffffff height=493>
<TABLE height=482 cellSpacing=0 cellPadding=0 width=686
background=多项式的加减运算.files/vccode.htm border=0>
<TBODY>
<TR>
<TD align=left width="100%" height=21>1.多项式的加减运算
<P><FONT color=#0000ff>问题</FONT>:使用链表操作实现多项式的加减运算。</P>
<P><FONT
color=#0000ff>算法</FONT>:链表的基本操作,包括插入、删除、合并等操作,下面是实现加减法的核心程序。</P>
<P>typedef struct Polyn<BR>{<BR> float coef; /* 系数
*/<BR> int expn; /* 幂 */<BR> struct Polyn *next; /*
下一节点的指针 */<BR>} Polyn;</P>
<P>Polyn *add(Polyn *heada,Polyn *headb)<BR>{<BR> Polyn
*headc,*p,*q,*s,*r;<BR> float
x;<BR> p=heada;q=headb;<BR> headc=(Polyn
*)malloc(sizeof(Polyn));<BR> r=headc;<BR> while
(p!=NULL&&q!=NULL)<BR> {<BR>
if(p->expn==q->expn) /* 指数相等 */<BR>
{<BR>
x=p->coef+q->coef;<BR>
if(x!=0)<BR> {<BR>
s=(Polyn *)malloc(sizeof(Polyn));<BR>
s->coef=x;<BR>
s->expn=p->expn;<BR>
r->next=s;<BR>
r=s;<BR> }<BR>
p=p->next;<BR> q=q->next;<BR>
}<BR> else /* 比较的时候已经通过sort函数按多项式的幂排序 */<BR>
if(p->expn<q->expn) /* 总是记录幂大者的信息 */<BR>
{<BR> s=(Polyn
*)malloc(sizeof(Polyn));<BR>
s->coef=q->coef;<BR>
s->expn=q->expn; /* 记录q指针的信息
*/<BR>
r->next=s;<BR>
r=s;<BR>
q=q->next;<BR> }<BR> else<BR>
{<BR> s=(Polyn
*)malloc(sizeof(Polyn));<BR>
s->coef=p->coef;<BR> s->expn=p->expn;
/* 记录p指针的信息 */<BR>
r->next=s;<BR> r=s;<BR>
p=p->next;<BR> }<BR> }<BR> while(p!=NULL) /*
将p或q的剩余未运算的多项式各项信息记录在s指针中 */<BR> {<BR> s=(Polyn
*)malloc(sizeof(Polyn));<BR>
s->coef=p->coef;<BR>
s->expn=p->expn;<BR> r->next=s;<BR>
r=s;<BR>
p=p->next;<BR> }<BR> while(q!=NULL)<BR> {<BR>
s=(Polyn *)malloc(sizeof(Polyn));<BR>
s->coef=q->coef;<BR>
s->expn=q->expn;<BR> r->next=s;<BR>
r=s;<BR>
q=q->next;<BR> }<BR> r->next=NULL;<BR> s=headc;<BR> headc=headc->next;<BR> free(s);<BR> return(headc);<BR>}<BR><BR>Polyn
*sub(Polyn *heada,Polyn *headb) /* 减法就是加法的逆运算 */<BR>{<BR> Polyn
*r,*hc;<BR> r=headb;<BR> while(r!=NULL) /*
headb多项式系数全变成原来的相反数 */<BR> {<BR>
r->coef=-r->coef;<BR>
r=r->next;<BR> }<BR> hc=add(heada,headb); /* 相加
*/<BR> return hc;<BR>}<BR></P>
<P>程序:<A href="http://vip.6to23.com/dcyu/TurboC/DS/Polyn.zip"><FONT
color=#0000ff>Polyn.zip</FONT></A><FONT
color=#0000ff>
</FONT><FONT
color=#0000ff>
</FONT><A href="http://vip.6to23.com/dcyu/TurboC/DS/2.html"><FONT
color=#0000ff>下一页</FONT></A></P>
<P> </P></TD></TR>
<TR>
<TD align=left width="100%" height=21>
</TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
<HR align=center width=740 color=#8fb373 noShade SIZE=1>
<TABLE cellSpacing=0 cellPadding=0 width="90%" border=0>
<TBODY>
<TR bgColor=#949231>
<TD height=3></TD></TR></TBODY></TABLE>
<TABLE height=37 width=490>
<TBODY>
<TR>
<TD vAlign=top align=left width=486 height=8>
<P align=center><FONT size=2><FONT face=Arial>Copyright
2001-2002</FONT>,<FONT face=Arial>dcyu, All rights reserved</FONT>,
上次更新:2002-10-13</FONT> <FONT color=#000000><BR></FONT><FONT
color=#000080 size=2>E-mail : <A
href="mailto:dcyu@163.net">dcyu@163.net</A> QQ :
28009316 </FONT></P></TD></TR>
<TR>
<TD class=mainfont vAlign=top align=left width=486 height=17>
<P align=center><FONT size=2>建议使用IE 5.0以上版本进行浏览
最佳显示分辨率800*600</FONT></P></TD></TR></TBODY></TABLE> </DIV></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -