1樓:匿名使用者
一polycreate這個函式的引數有問題,在**中你都沒用到,所以不需要給他傳引數,改為:
polynode* polycreate()
二scanf("%d%d",&c,&e);
if(eexp)
你這個地方是要給他排序嗎?問題是你第二個節點還沒有分配記憶體啊!怎麼排序?
而且如果你輸入的情況是1 1,1 3,1 4然後有輸入一個1 2,意思就是說第一個是1次方,第二個是3次方,第三個是4次方,第四個是2次方,這個你該怎麼排序?所以應該是,你每輸入一個節點就遍歷一遍連結串列,插入到該插的地方。while迴圈部分改為:
scanf("%d%d",&c,&e);/*鍵入多項式的係數和指數項*/
while(c!=0) /*若c=0,則代表多項式的輸入結束*/
s->next = temp;//插入
rear->next = s;
scanf("%d%d",&c,&e);
}我修改之後的程式如下:
#include
#include
typedef struct polynode
polynode;
polynode* polycreate(/*polynode *head*/)
s->next = temp;//插入
rear->next = s;
scanf("%d%d",&c,&e);
}return(h);
}void polylist_add(polynode *head1,polynode *head2)
else if(p->exp>q->exp)
else
else
}if(p!=null) r->next=p;
else
r->next=q;
}}void printf_list(polynode *head)
}int main()
已經執行成功,希望能夠幫到你!以上
2樓:閆元白
用連結串列表示多項式,各結點按各項係數升序(或降序)排列,然後將加數的連結串列各結點依次插入被加數的連結串列,插入時保持升序(或降序)
一元多項式的計算 能夠按照指數降序排列建立並輸出多項式 能夠完成兩個多項式的相加及相減
3樓:諾諾百科
#includetypedef struct polynodenode *create() //用尾插法建立一元多項式的連結串列printf("exp: ");
scanf("%d",&e);
while(c!=0) //輸入係數為0時,多項式的輸入結束s->coef=c;
printf("coef:");
scanf("%d",&c);
scanf("%d",&e);
void print(node *p) //輸出函式,列印出一元多項式
temp=q->next;free(q);q=temp;
if(p!=null) //將多項式a中剩餘的結點加入到和多項式中pre->next=p;
else
void multipoly(node *ha,node *hb){ node *p,*q,*n,*m;
p=ha->next;
m->exp=p->exp+q->exp;
p=p->next;
polyadd(n,m);
printf("多項式的積是:\n");
printf("請輸入多項式hb的係數與指數:\n");
hb=create();
printf("多項式的和是:\n");
multipoly(ha,hb);
簡介在數學中,多項式(polynomial)是指由變數、係數以及它們之間的加、減、乘、冪運算(非負整數次方)得到的表示式。
對於比較廣義的定義,1個或0個單項式的和也算多項式。按這個定義,多項式就是整式。實際上,還沒有一個只對狹義多項式起作用,對單項式不起作用的定理。
0作為多項式時,次數定義為負無窮大(或0)。單項式和多項式統稱為整式。
4樓:咫尺天涯
#include
#include
#include
typedef struct polynode
node;
node *create() //用尾插法建立一元多項式的連結串列
r->next=null;
return(h);
} void print(node *p) //輸出函式,列印出一元多項式 }
void polyadd(node *ha, node *hb)//一元多項式相加函式,用於將兩個多項式相加,然後將和多項式存放在多項式ha中,並將多項式hb刪除
else if(p->exp==q->exp)
else //如果係數和為零,則刪除結點p與q,並將指標指向下一個結點 }
else }
if(p!=null) //將多項式a中剩餘的結點加入到和多項式中
pre->next=p;
else
pre->next=q;
} void multipoly(node *ha,node *hb)
p=p->next;
polyadd(n,m);
} printf("多項式的積是:\n");
print(n);
} void main()
c++程式設計:一元多項式計算 任務:能夠按照指數降序排列建立並輸出多項式; 能夠完成兩個多項式的相加、相減
5樓:咫尺天涯
#include
#include
#include
typedef struct polynode
node;
node *create() //用尾插法建立一元多項式的連結串列
r->next=null;
return(h);
} void print(node *p) //輸出函式,列印出一元多項式 }
void polyadd(node *ha, node *hb)//一元多項式相加函式,用於將兩個多項式相加,然後將和多項式存放在多項式ha中,並將多項式hb刪除
else if(p->exp==q->exp)
else //如果係數和為零,則刪除結點p與q,並將指標指向下一個結點 }
else }
if(p!=null) //將多項式a中剩餘的結點加入到和多項式中
pre->next=p;
else
pre->next=q;
} void multipoly(node *ha,node *hb)
p=p->next;
polyadd(n,m);
} printf("多項式的積是:\n");
print(n);
} void main()
一元多項式的表示及相加
資料結構,一元多項式的求和問題。
6樓:匿名使用者
我寫的**寫成了兩個檔案了,
這個是 多項式加法list.h
#include
typedef struct node
listnode;
void creat(listnode *&l)p->next=null;
}void print(listnode *l)p=p->next;
}printf("\n");
if(l2->next!=null)
>next!=null&&pre->next->exp==p->exp)
else}}
還有個 多項式加法main
#include
#include
#include "list.h"
int main()
return 0;
}望採納謝謝
怎樣有matlab解多項式方程用matlab如何解方程
用matlab解方程的三個例項 1 對於多項式p x x3 6x2 72x 27,求多項式p x 0的根,可用多項式求根函式roots p 其中p為多項式係數向量,即 p p 1.00 6.00 72.00 27.00 p是多項式的matlab描述方法,我們可用poly2str p,x 函式 來顯示...
初中數學單項式,初一數學什麼是單項式 多項式
多項式的次數是單項式的最高次數,這個最高是第二項,是6次 未知數最大次為幾次式 由數與字母的積組成的代數式叫做單項式,單獨的一個數或一個字母也叫做單項式 例 0可看做0乘a,1可以看做1乘指數為0的字母,b可以看做b乘1 注意 1.分母含有字母的式子不屬於單項式。因為單項式屬於整式,而分母含有未知數...
初一數學題(整式帶入 求多項式的值)
1 令3a b a 6a 2b 3 4轉換為2a 3 4 2a 7 a 5 8.5 即3a b 5 8.5 2 a 1.5 即2 3a b 1.5 2 636f707962616964757a686964616f31333264663130 27a 3b 10 令9a 3b a 6 聯立方程得36a...