数据结构_多项式_C语言源代码

来源:互联网 发布:mac地址冲突的后果 编辑:程序博客网 时间:2024/06/07 07:27
#include<stdio.h>
#include<stdlib.h>
typedef struct Node
{
        int x;
        int e;
        struct Node *next;
        
}Node;


typedef struct Info
{
        int x;
        int e;
      
        
}Info;




void CreatePolynomial(Node *L,Info a[],int n)
{
    Node *p=L;
    Node *s=NULL;
    int i;
    for(i=0;i<n;i++)
    {
      s=(Node*)malloc(sizeof(Node));
      s->x=a[i].x;
      s->e=a[i].e;
      p->next=s;
      p=s;
    }
    p->next=NULL;
    
}


void VisitPolynomial(Node *L)
{
     Node *p=L->next;
     if(NULL!=p)
     {
                
       if(p->e!=0)
       {
        printf("%d x^%d",p->x,p->e);
       }
       else
       {
           printf("%d",p->x);
       }
        p=p->next;
     }
     
      while(NULL!=p)
     {
        if(p->e!=0)
       {
        printf(" + %d x^%d",p->x,p->e);
       }
       else
       {
           printf("%d",p->x);
       }
        p=p->next;
     }
}


void InitPolynomial(Node* &L)
{
     L=(Node*)malloc(sizeof(Node));
     L->next=NULL;
}


int main(void)
{
    Node *L;
    const int N1=5;
    Info a1[]={{1,0},{2,1},{3,2},{3,4},{5,7}};
    InitPolynomial(L); 
    CreatePolynomial(L,a1,N1);
    VisitPolynomial(L);
    putchar(10);
    system("pause");
    return 0;
}
0 0
原创粉丝点击