函数readlist从标准输入读入一系列正整数,按照读入顺序建立单链表。当读到−1时表示输入结束,函数应返回指向单链表头结点的指针。
函数getodd将单链表L中奇数值的结点分离出来,重新组成一个新的链表。返回指向新链表头结点的指针,同时将L中存储的地址改为删除了奇数值结点后的链表的头结点地址(所以要传入L的指针)。
struct ListNode *readlist() //创建链表
{
struct ListNode *head, *p, *q;
head = (struct ListNode*)malloc(sizeof(struct ListNode));
head->next = NULL;
head->data = 0;
q = head; // 赋值给临时结点
while (