"谭浩强C语言ppt教学资料,讲解如何输出链表,以及C++语言的发展历史和特点"
在C语言编程中,链表是一种重要的数据结构,它不同于数组,数组中的元素在内存中是连续存储的,而链表中的元素(节点)则是通过指针相互连接。这段代码展示了一个简单的链表输出函数`print`,用于打印链表中每个节点的数值和分数。函数接受一个类型为`STU *`的指针,即链表的头指针`head`。
```c
void print(STU * head)
{
STU *p;
p = head;
while (p != NULL)
{
cout << p->num << '\t' << p->score << '\n';
p = p->next;
}
}
```
在`print`函数中,首先定义了一个指向`STU`类型的指针`p`,并将其初始化为链表的头指针`head`。接着进入一个while循环,条件是`p`不等于`NULL`,这代表链表未结束。在每次循环中,先输出当前节点`p`的`num`和`score`字段,然后将`p`指针移动到下一个节点,直到遍历完整个链表。
描述中提到的输出数据展示了链表中的四个节点,分别是节点A、B、C和D,每个节点包含一个编号(如3000H)和一个分数(如3050H)。在链表中,每个节点通常包括数据部分(在这里是`num`和`score`)和一个指向下一个节点的指针(`next`)。
C++是C语言的扩展,它在C的基础上增加了面向对象的特性,使得程序设计更加模块化和易于维护。C++的历史始于20世纪70年代,由C语言的开发者Dennis Ritchie和Bjarne Stroustrup等人在C的基础上发展和完善。C++的特点包括:
1. 结构化编程:C++支持结构化编程,使程序逻辑清晰,易于理解和维护。
2. 面向对象:C++引入类和对象的概念,支持封装、继承和多态,增强了代码的复用性和灵活性。
3. 混合编程风格:C++同时具备高级语言和汇编语言的特点,允许直接处理硬件,同时提供丰富的数据类型和运算符。
4. 可移植性:C++编写的程序可以在不同的计算机平台上运行,只需要少量或无需修改。
5. 强大的库支持:C++标准库提供了大量的功能,如输入/输出流、容器、算法等,极大地提高了开发效率。
然而,C++的语法较为复杂,对于初学者来说可能有一定难度,调试程序也需要更多的技巧。但一旦掌握了C++,就能编写出高效且功能强大的程序。