创建单向链表 要求:自定义函数create(),实现创建一个链表,将此函数定义为指针类型,使其返回值为指针值,返回值指向一个struct LNode类型数据,实际上是返回链表的头指针。在main()函数中调用自定义函数create(),实现创建一个链表,并将链表中的数据输出。最后别忘了释放链表内存。这里使用malloc()函数实现动态开辟存储单元。 声明struct LNode类型,代码如下: struct LNode { int data; struct LNode *next; }; 程序运行结果示例: 输入: 输入你想创建的结点个数:3 输入整数: 1 2 3 输出: 结果是: 1 2 3 输入提示:"输入你想创建的结点个数:" 输入格式:"%d" 输入提示:"输入整数:\n" 输入格式:"%d" 输出提示:"结果是:\n" 输出格式:"%d " 输出格式:"\n" //在输出所有节点以后换行
时间: 2024-03-10 07:49:27 浏览: 32
单链表类的创建
4星 · 用户满意度95%
好的,这是一个关于创建单向链表的C语言实现,程序如下:
```c
#include <stdio.h>
#include <stdlib.h>
struct LNode {
int data;
struct LNode *next;
};
struct LNode* create(int n) {
struct LNode *head, *p, *q;
int i;
head = (struct LNode*)malloc(sizeof(struct LNode));
head->next = NULL;
q = head;
for (i = 0; i < n; i++) {
p = (struct LNode*)malloc(sizeof(struct LNode));
printf("输入整数:\n");
scanf("%d", &p->data);
p->next = NULL;
q->next = p;
q = p;
}
return head;
}
int main() {
int n;
struct LNode *head, *p;
printf("输入你想创建的结点个数:");
scanf("%d", &n);
head = create(n);
printf("结果是:\n");
p = head->next;
while (p != NULL) {
printf("%d ", p->data);
p = p->next;
}
printf("\n");
p = head->next;
while (p != NULL) {
free(p);
p = p->next;
}
return 0;
}
```
程序运行结果示例:
```
输入你想创建的结点个数:3
输入整数:
1
输入整数:
2
输入整数:
3
结果是:
1 2 3
```
阅读全文