链表的创建(c语言)

#include <stdio.h>
#include <stdlib.h>
typedef struct Link{
	int elem;
	struct Link* next;
}link;
link* initLink(){
	link *p = NULL;//创建头指针
	link *temp = (link*)malloc(sizeof(link));//创建首元节点
	//首元节点初始化
	temp->elem = 1;
	temp->next = NULL;
	p = temp;
	for(int i=2;i<5;i++){
		link *a =(link*)malloc(sizeof(link)); 
		a->elem = i;
		a->next = NULL;
		temp->next = a;
		temp = temp->next;
	}
	return p;
}
void display(link *p){
	link *temp = p;
	while(temp){
		printf("%d ",temp->elem);
		temp=temp->next;
	}
	printf("\n");
}
void reserve(link *p){
	while(p->next!=NULL&&)




}
int main(){
	printf("链表初始化:\n");
	link *P=initLink();
	display(P);
	
	return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
尾插法是一种常见的方法,用于在C语言创建链表。下面是使用尾插法创建链表的步骤: 1. 首先,创建一个结构体来存储链表的节点数据。结构体包含一个数据项和一个指向下一个节点的指针。 2. 声明并定义一个头指针和一个尾指针,初始时它们都为空。 3. 输入要插入链表的节点数据。 4. 创建一个新的节点,并将输入的数据项赋值给节点的数据字段。 5. 如果链表为空,则将头指针和尾指针都指向新创建的节点。 6. 如果链表不为空,则将尾指针的next字段指向新创建的节点,并将尾指针更新为新的节点。 7. 重复步骤3到6,直到输入没有更多的节点数据。 8. 当输入所有节点数据后,链表创建就完成了。 下面是使用尾插法创建链表C语言代码示例: ```c #include <stdio.h> #include <stdlib.h> // 定义链表节点结构体 typedef struct Node { int data; struct Node* next; } Node; // 尾插法创建链表 Node* createLinkedList() { Node* head = NULL; Node* tail = NULL; int input; printf("请输入节点数据(输入-1结束):\n"); while (1) { scanf("%d", &input); if (input == -1) { break; } Node* newNode = (Node*)malloc(sizeof(Node)); newNode->data = input; newNode->next = NULL; if (head == NULL) { head = newNode; tail = newNode; } else { tail->next = newNode; tail = newNode; } } return head; } // 输出链表 void printLinkedList(Node* head) { Node* curr = head; while (curr != NULL) { printf("%d ", curr->data); curr = curr->next; } printf("\n"); } int main() { Node* head = createLinkedList(); printf("创建链表:\n"); printLinkedList(head); return 0; } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值