1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| #include<stdio.h> #include<stdlib.h>
typedef struct node { int num; struct node *next; }Node;
int main() { Node *head,*p,*q; int i,j; head=malloc(sizeof(Node)); head->num=1; p=head; for(i=2;i<=13;i++) { q=malloc(sizeof(Node)); p->next=q; p=p->next; p->num=i; } p->next=head; p=head; printf("\n出圈成员及顺序:"); for(i=1;i<=12;i++) { for(j=1;j<3;j++) { q=p; p=p->next; } printf("%3d",p->num); q->next=p->next; free(p); p=q->next; } printf("\n最后的成员是:"); printf("%3d",p->num); return 0; }
|