• 大小: 10KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-05-13
  • 语言: C/C++
  • 标签:

资源简介

加减乘除求导积分求值 加减乘除求导积分求值 加减乘除求导积分求值 加减乘除求导积分求值

资源截图

代码片段和文件信息

#include
#include
#include
typedef struct{
   float coef;
   int expn;
}termElemType;
typedef struct LNode{
    ElemType data;
    struct LNode *next;
}LNode*linkList;
void Copypolyn(linkList PlinkList &S)// L原多项式 S复制储存位置
{
    term e;link sp;
    p=L.head->next;
    while(P->next!=NULL)
    {
e=(linkList)malloc(sizeof(LNode));
        e.coef=P->data.coef;
        e.expn=P->data.expn;
        p=p->next;
        S.tail->next=NULL;
    }
}
void OrderPolyn(linkList &P){  //让多项式升幂排序
       linkList abcd;
       int n;
       if(P->next==NULL) return;
       for(;;){
               n=0;
               b=P->next;c=P;a=b->next;
               while(a!=NULL){
                              if(b->data.expndata.expn){
                                 b->next=a->next;a->next=b;c->next=a;d=a;a=b;b=d;n=n+1;
                                 b=a;
                                 a=a->next;
                                 c=c->next;
                              }
                              else if(b->data.expn==a->data.expn){
                                    b->data.coef=a->data.coef+b->data.coef;
                                    b->next=a->next;
                                    free(a);
                                    a=b->next;}
                              else{
                                    b=a;
                                    a=a->next;
                                    c=c->next;}
               }
               if(n==0) break;
       }
       a=P->next;b=P;
       while(a!=NULL){
           if(a->data.coef==0){b->next=a->next;free(a);a=b->next;}
           else{a=a->next;b=b->next;}  //删除系数为0的elemtype
       }
}
void CreatPolyn(linkList &P){
     linkList a;
     float f;
     P=(linkList)malloc(sizeof(LNode));
     P->next=NULL;
     printf(“输入系数和指数\n“);
     for(;;){
        a=(linkList)malloc(sizeof(LNode));
        printf(“请输入系数输入0结束\n“);
        scanf(“%f“&f);
        if(f==0){
                free(a);
                break;
        }
        a->data.coef=f;
        printf(“请输入指数\n“);
        scanf(“%d“&a->data.expn);
        a->next=P->next;P->next=a;
        }
      OrderPolyn(P);
}

void DestroyPolyn(linkList &P){
    linkList ab;
    a=P->next;b=a;
    while(b!=NULL){
        b=a->next;
        free(a);
        a=b;
        }
    free(P);
    P=NULL;
}
void PrintPolyn( linkList P){
    linkList a;
    a=P->next;
    while(a !=NULL){
        printf(“%6.3f*x^%d“a->data.coefa->data.expn);
        if(a->next!=NULL && (a->next->data.coef>0) ) printf(“+“);
        a=a->next;
    }
    printf(“\n“);
}

int PolynLength(linkList P){
    linkList a;
    int n=0;
    a=P->next;
    while(a!=NULL){
        n++;a=a->next;
    }
    return(n);
}
linkList AddPolyn(linkList &Pa linkList &Pb){
    linkList abcPc;
    int ni;
    Pc=( linkList)malloc(sizeof(LNode));
    Pc-

评论

共有 条评论

相关资源