建立具有三个结点的链表并输出链表。结点数据为学号、姓名。其中main函数代码如下: int main() { st *head; head=input(); print (head); return 0; }要求:用C++实现,头文件使用iostream
时间: 2024-02-03 09:04:16 浏览: 41
删除结点操作-C语言编程入门教程
好的,我明白了。以下是实现代码:
```c++
#include <iostream>
using namespace std;
struct st {
int num;
string name;
st *next;
};
st* input() {
st *head = NULL, *p, *q;
for (int i = 0; i < 3; i++) {
p = new st;
cout << "请输入第" << i+1 << "个学生的学号和姓名(以空格隔开):" << endl;
cin >> p->num >> p->name;
p->next = NULL;
if (head == NULL) {
head = p;
q = p;
} else {
q->next = p;
q = p;
}
}
return head;
}
void print(st *head) {
st *p = head;
while (p != NULL) {
cout << "学号:" << p->num << ",姓名:" << p->name << endl;
p = p->next;
}
}
int main() {
st *head;
head = input();
print(head);
return 0;
}
```
以上代码可以通过输入三个学生的学号和姓名,来创建一个具有三个结点的链表,并输出链表中的所有数据。
阅读全文