1
//
查找节点
2 list * findNode(list * head, int num) // num:学号
3 {
4 list * ptr;
5 ptr = head;
6 while (ptr != NULL)
7 {
8 if (ptr -> num == num)
9 return ptr;
10 ptr = ptr -> next;
11 }
12 return ptr;
13 }
14 // 插入节点
15 list * insertNode(list * head, list * ptr, int num, int scort, char name[ 15 ])
16 {
17 list * inserNode = new list;
18 if ( ! inserNode)
19 return NULL;
20 inserNode -> num = num;
21 inserNode -> score = scort;
22 strcpy(inserNode -> name , name);
23 inserNode -> next = NULL;
24
25 if (ptr == NULL) // 第一个节点
26 {
27 inserNode -> next = head;
28 return inserNode;
29 }
30 else
31 {
32 if (ptr -> next == NULL) // 如果是最后一个节点
33 ptr -> next = inserNode;
34 else
35 { // 不是第一个, 也不是最后一个, 中间的
36 inserNode -> next = ptr -> next;
37 ptr -> next = inserNode;
38 }
39 }
40 return head;
41 }
2 list * findNode(list * head, int num) // num:学号
3 {
4 list * ptr;
5 ptr = head;
6 while (ptr != NULL)
7 {
8 if (ptr -> num == num)
9 return ptr;
10 ptr = ptr -> next;
11 }
12 return ptr;
13 }
14 // 插入节点
15 list * insertNode(list * head, list * ptr, int num, int scort, char name[ 15 ])
16 {
17 list * inserNode = new list;
18 if ( ! inserNode)
19 return NULL;
20 inserNode -> num = num;
21 inserNode -> score = scort;
22 strcpy(inserNode -> name , name);
23 inserNode -> next = NULL;
24
25 if (ptr == NULL) // 第一个节点
26 {
27 inserNode -> next = head;
28 return inserNode;
29 }
30 else
31 {
32 if (ptr -> next == NULL) // 如果是最后一个节点
33 ptr -> next = inserNode;
34 else
35 { // 不是第一个, 也不是最后一个, 中间的
36 inserNode -> next = ptr -> next;
37 ptr -> next = inserNode;
38 }
39 }
40 return head;
41 }