链表——头标法插入
#include<stdio.h>
#include<stdlib.h>
struct Test
{
int data;
struct Test* next;
};
void printList(struct Test* head)
{
struct Test* point;
point = head;
while(point != NULL)
{
printf("%d ",point->data);
point = point->next;
}
}
struct Test* InsertfromHead(struct Test* head,struct Test* new)
{//头标法插入
if(head == NULL)
{
head = new;
}else
{
new->next = head;
head = new;
}
return head;
}
struct Test* CreadList(struct Test* head)
{//创建结点
struct Test *new = NULL;
while(1)
{
new = (struct Test*)malloc(sizeof(struct Test));
printf("Please you input data to list\n");
scanf("%d",&(new->data));
if(new->data == 0)
{
printf("you input 0 quit!\n");
free(new);
return head;
}
head = InsertfromHead(head,new);//将链表头,和要插入的数据传到头标法中
}
}
int main()
{
struct Test* head = NULL;
head = CreadList(head);
printList(head);
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!