91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡(jiǎn)介

這是使用C語(yǔ)言寫(xiě)成。實(shí)現(xiàn)了一元多項(xiàng)式的加減乘的運(yùn)算。我們使用計(jì)算機(jī)處理的對(duì)象之間通常存在著的是一種最簡(jiǎn)單的線性關(guān)系,這類(lèi)數(shù)學(xué)模型可稱為線性的數(shù)據(jù)結(jié)構(gòu)。而數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)有兩種:順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。線性表是最常用且最簡(jiǎn)單的一種數(shù)據(jù)結(jié)構(gòu)。所以我們做的是———–一元多項(xiàng)式的表示及相加,其過(guò)程其實(shí)是對(duì)線性標(biāo)的操作。實(shí)驗(yàn)結(jié)構(gòu)和鏈接存儲(chǔ)結(jié)構(gòu)上的運(yùn)算以及熟練運(yùn)用掌握的線性表的操作,實(shí)現(xiàn)一元n次多項(xiàng)式的目的是掌握線性表的基本操作,插入、刪除、查找,以及線性表合并等運(yùn)算在順序存儲(chǔ)的加法運(yùn)算。學(xué)習(xí)實(shí)現(xiàn)一元n次多項(xiàng)式的加法是符號(hào)多項(xiàng)式的操作,是表處理的典型用例,需要注意的是:順序存儲(chǔ)結(jié)構(gòu)指的是用數(shù)組方法,使用數(shù)組方法實(shí)現(xiàn)時(shí),在插入和刪除的方面,數(shù)組不如鏈表靈活,方法復(fù)雜,刪除其中一個(gè)需要將其后的數(shù)組元素改變位置,使其數(shù)組保持原有的順序結(jié)構(gòu),在查找方面較鏈表簡(jiǎn)單,只需要知道其下標(biāo)就可以知道。鏈接存儲(chǔ)結(jié)構(gòu)指的是用鏈表方法,值得注意的是,刪除和插入較為靈活,不需要變動(dòng)大多數(shù)元素,但是查找過(guò)程相對(duì)于數(shù)組這種順序存儲(chǔ)結(jié)構(gòu)來(lái)說(shuō)較為復(fù)雜,耗時(shí)巨大。

資源截圖

代碼片段和文件信息

#include
#include
#include?

#define?LEN?sizeof(Poly)

typedef?struct?term{
float?coef; //系數(shù)?
int?expn; //指數(shù)?
struct?term?*next;
}Poly*link;
int?LocateElem(link?p?link?s?link?&q);?
void?CreatePolyn(link?&pint?m); //創(chuàng)建多項(xiàng)式?
void?PrintPolyn(link?p); //打印多項(xiàng)式(表示)
int?cmp(link?a?link?b);
link?AddPolyn(link?pa?link?pb); //多項(xiàng)式相加?
link?SubPolyn(link?pa?link?pb); //多項(xiàng)式相減?
link?Reverse(link?p); //逆置多項(xiàng)式?
link?MultiplyPolyn(link?Alink?B); //多項(xiàng)式相乘?
void?Calculate(link?pfloat?x); //多項(xiàng)式求值?

int?main()
{
link?P1P2P3; //多項(xiàng)式?
int?L1L2; //多項(xiàng)式長(zhǎng)度?
printf(“????????????????????????-------------------------------------------------------------------\n“);
printf(“????????????????????????|==================???????一元多項(xiàng)式的運(yùn)算???????=================|\n“);
printf(“????????????????????????|==================??????????1.相加(+)?????????=================|\n“);
printf(“????????????????????????|==================??????????2.相減(-)?????????=================|\n“);
printf(“????????????????????????|==================??????????3.相乘(*)?????????=================|\n“);
printf(“????????????????????????-------------------------------------------------------------------\n\n“);
printf(“請(qǐng)輸入第一個(gè)多項(xiàng)式的項(xiàng)數(shù):“);
scanf(“%d“&L1);
CreatePolyn(P1L1);
printf(“第一個(gè)多項(xiàng)式為:“);
printf(“P1(X)=“);
PrintPolyn(P1);
printf(“請(qǐng)輸入第二個(gè)多項(xiàng)式的項(xiàng)數(shù):“);
scanf(“%d“&L2);
CreatePolyn(P2L2);
printf(“第二個(gè)多項(xiàng)式為:“);
printf(“P2(X)=“);
PrintPolyn(P2);?
printf(“\n“);

printf(“請(qǐng)輸入要選擇的運(yùn)算(+??-??*):?“);
char?ch1;
getchar(); //清除掉緩沖區(qū)的回車(chē)符?
scanf(“%c“&ch1);
getchar(); //清除掉緩沖區(qū)的回車(chē)符
? switch(ch1){
? case?‘+‘:{
? printf(“兩個(gè)一元多項(xiàng)式相加:???“);
? printf(“P1(X)+P2(X)=“);
? P3=AddPolyn(P1?P2);
PrintPolyn(P3);
? }break;
? case?‘-‘:{
? printf(“兩個(gè)一元多項(xiàng)式相減:???“);
? printf(“P1(X)-P2(X)=“);
? P3=SubPolyn(P1?P2);
PrintPolyn(P3);
? }break;
? case?‘*‘:{
? printf(“兩個(gè)一元多項(xiàng)式相乘:???“);
? printf(“P1(X)*P2(X)=“);
? P3=MultiplyPolyn(P1?P2);
PrintPolyn(P3);
? }break;
? default:printf(“您輸入了錯(cuò)誤指令?%c?!“ch1);?
?}

char?ch2;
printf(“\n是否代入X進(jìn)行求值?(Y/N):?“);
ch2=getchar(); //清除掉緩沖區(qū)的回車(chē)符??
getchar();
switch(ch2){
case?‘Y‘:{
float?x;
printf(“\n請(qǐng)輸入多項(xiàng)式中X的值:“);
scanf(“%f“&x);?
Calculate(P3x);
break;
}
case?‘N‘:break;
default:printf(“你輸入了錯(cuò)誤指令?%c?!“ch2);?
}?
return?0;
}

int?LocateElem(link?p?link?s?link?&q){
/*遍歷鏈表p,每一個(gè)結(jié)點(diǎn)與s比較指數(shù),
若相同q指向相同指數(shù)項(xiàng)的結(jié)點(diǎn),返回1,
若不相同,根據(jù)s所指指數(shù)大小在鏈表p中的位置來(lái)確定q的指向結(jié)點(diǎn),返回0?
*/?
link?p1?=?p->next;
link?p2?=?p;
while(p1){
if(s->expn?>?p1->expn){
p1?=?p1->next;
p2?=?p2->next;
}else?if(s->expn?==?p1->expn){
q?=?p1;?
return?1;
}else{
q?=?p2;
return?0;
}
}
if(!p1){
q?=?p2;
return?0;
}
}

void?CreatePolyn(link?&pint?m)?
/*創(chuàng)建帶頭結(jié)點(diǎn)的鏈表(多項(xiàng)式)?
且無(wú)論按什么順序輸入,或是有相同指數(shù)項(xiàng)
最終在多項(xiàng)式中都是升冪順序!?
*/
{
link?sq;
int?i;
p=(link)malloc(LEN);
p->next=NULL;
for(i=0;i {
s=(link)malloc(LEN)

評(píng)論

共有 條評(píng)論

相關(guān)資源