循环链表(数组输入值)

    技术2026-09-03  15

    #include<stdio.h> #include<stdlib.h>

    typedef struct node{ int date; struct node *next; }Link;

    Link *Creatlink(int a[]) { Link *h,*tail,p,q; h=tail=(Link)malloc(sizeof(Link)); h->date=a[0]; tail->next=NULL; int i; for(i=1;i<5;i++) { p=(Link)malloc(sizeof(Link)); p->date=a[i]; p->next=NULL; tail->next=p; tail=p; }

    q=h->next; while(q->next!=NULL)//找到最后一个结点 { q=q->next; } q->next=h;//h->next;//将最后一个结点指向第一个结点 return h;

    }

    void Printlink(Link *h) { Link *p; p=h; int i; for(i=0;i<20;i++) { printf("%d\t",p->date); p=p->next;

    }

    }

    int main() { int a[5]={5,4,3,2,1}; Link *head; head=Creatlink(a); Printlink(head); system(“pause”); }

    Processed: 0.008, SQL: 9