这个是数据结构简单链表的问题 (带头结点)
1个回答

s->next=p->next;//是把p的下一个赋为s的下一个,就是s->next和p->next指向同一个

p->next=s; p的下一个就变成s,p->next的值就是s

第二次循环时,就来了一个新的s,再次执行下面的

s->next=p->next;就是新的s的下一个指向以前的s

p->next=s; 而p就指向新的s

比如,开始p->next=NULL,

第一次循环来了一个1,执行完后,p->next=1,1的下一个是NULL(1->next=NULL);

第二次循环,来了2,执行完后,p->next=2; 2的下一个指向1(2->next =1),