已知head指针指向一个已建立的单向链表。链表中每个节点包含数据域(data)和指针域(next)。定义一个函数求链表中所有节点的数据域之和
时间: 2023-12-03 07:45:54 浏览: 109
关于链表 指针
可以通过遍历链表来累加每个节点的数据域的值,最终得到所有节点数据域之和。具体实现如下:
```c++
int sumList(Node* head) {
int sum = 0;
Node* p = head;
while (p != NULL) {
sum += p->data;
p = p->next;
}
return sum;
}
```
其中,`Node`是链表节点的结构体,包含数据域`data`和指针域`next`。`head`是链表头指针,指向链表的第一个节点。`p`是遍历链表时使用的指针,初始值为`head`。`sum`是累加器,用于存储所有节点数据域之和。在循环中,首先将当前节点的数据域加到`sum`中,然后将指针向后移动到下一个节点,直到链表末尾。最后返回`sum`即可。
阅读全文