早教吧作业答案频道 -->其他-->
两个一元多项式相加,为什么0+0时输出的结果是空白,哪位大虾帮忙看一下,小弟急求,在线等Polytype*polyadd(Polytype*ha,Polytype*hb){/*多项式相加*/Polytype*hc=malloc(sizeof(Polytype)),*pc=hc,*pa=ha->next,*pb=hb-
题目详情
两个一元多项式相加,为什么0+0时输出的结果是空白,哪位大虾帮忙看一下,小弟急求,在线等
Polytype *polyadd(Polytype *ha,Polytype *hb){/*多项式相加*/
Polytype *hc=malloc(sizeof(Polytype)),*pc=hc,*pa=ha->next,*pb=hb->next;
int e,c; /*c 为系数,e为指数*/
while(pa || pb){
if(pa&&(pb==NULL||(pa->ee))){
c=pa->c; e=pa->e;
pa=pa->next;
}
else if(pb&&(pa==NULL||(pa->e>pb->e))){
c=pb->c; e=pb->e;
pb=pb->next;
}
else{
c=pa->c+pb->c;
e=pa->e;
pa=pa->next;
pb=pb->next;
}
if(c){
pc->next=malloc(sizeof(Polytype));
pc=pc->next;
pc->c=c;
pc->e=e;
}
}
pc->next=NULL;
return hc;
}
Polytype *polyadd(Polytype *ha,Polytype *hb){/*多项式相加*/
Polytype *hc=malloc(sizeof(Polytype)),*pc=hc,*pa=ha->next,*pb=hb->next;
int e,c; /*c 为系数,e为指数*/
while(pa || pb){
if(pa&&(pb==NULL||(pa->ee))){
c=pa->c; e=pa->e;
pa=pa->next;
}
else if(pb&&(pa==NULL||(pa->e>pb->e))){
c=pb->c; e=pb->e;
pb=pb->next;
}
else{
c=pa->c+pb->c;
e=pa->e;
pa=pa->next;
pb=pb->next;
}
if(c){
pc->next=malloc(sizeof(Polytype));
pc=pc->next;
pc->c=c;
pc->e=e;
}
}
pc->next=NULL;
return hc;
}
▼优质解答
答案和解析
虽然不知道你这个Polytype类内部的定义是怎样的,但是如果说两个都是0,相加不输出结果的话,问题应该是出在 while(pa || pb)这一行,当两个多项式均是0多项式时,pa和pb都是false,这样一来,while循环里的东西全部不能执行.只剩下
pc->next=NULL;
return hc;
这两行,结果自然是没有输出.
想要有输出的话,你需要在while循环外多设计一个处理零多形式的过程.
pc->next=NULL;
return hc;
这两行,结果自然是没有输出.
想要有输出的话,你需要在while循环外多设计一个处理零多形式的过程.
看了 两个一元多项式相加,为什么0...的网友还看了以下:
光到达任何一点都有固定的相位.两光波在相遇点相位的差就是位相差也叫相位差.这里的相位是指? 2020-04-26 …
一道速算题,求解个位是1的两位数相乘方法:十位与十位相乘,得数为前积,十位与十位相加,得数接着写, 2020-05-22 …
速算技巧中的题目!首位相同,尾数和不等于10的两位数相乘两首位相乘(即求首位的平方),得数作为前积 2020-05-22 …
同相振动,反相振动,问完去吃饭...前面问了,有人回答说相指的是相位,相位相同,是同相振动相位相反 2020-06-18 …
p轨道图中的"+"和"-"表示波位相什么是波位相,+和-又表示什么样的波位相为什么对称的两轨道波位 2020-07-10 …
两相邻波节间的点相位相同,波节两边的点相位相反,相位相同和相反分别是什么意思? 2020-07-10 …
相位差为±90℃电压都超前于电流吗?若φ=Ψu-Ψi=0°,这时就称u与i相位相同,或者说u与i同 2020-07-30 …
原副线圈相位差问题.变压器原副线圈中电压有相位差,且相位差为90度相位差180°,将负边两个端口对 2020-07-30 …
彩票中奖号码由7位数字组成.每位数字均为0到9中的任一个.若全相同,得一等奖;若相应数位上的6位相连 2020-12-03 …
一个数,每个数位上的数字都不同且个位和十位相加之和等于百位上的,十位和百位相加等于千位上的数,百位和 2020-12-17 …