链表之初识

简介: 链表之初识
#include <stdio.h>
#include <malloc.h>
#define  N  sizeof(struct student)
struct student
{
  int num;
  char name[20];
  int score;
  struct student *next;
};
struct student* creat_list(void)
{ struct student* Head,*p0,*p1;//结构体指针变量
  Head=p0=(struct student*)malloc(N);//指向头结点
  p1=(struct student*)malloc(N);//指向第一个结点
 
  scanf("%d %s %d",&p1->num,p1->name,&p1->score);
  
  while(p1->num!=0)//输入学号为0那么退出循环
  { p0->next=p1;
    p0=p1;//指向下一个节结
    p1=(struct student*)malloc(N);
    
  scanf("%d %s %d",&p1->num,p1->name,&p1->score);
  }
  p0->next=NULL;
  free(p1);//释放存学号为0的空间
  return Head;
}
void print_list(struct student* pH)
{
  pH=pH->next;
  while(pH!=NULL)
  {
    printf("%d %s %d\n",pH->num,pH->name,pH->score);
    pH=pH->next;
  }
}
int main (void)
{
  struct student* head;
  head=creat_list();//返回头结点的地址
  print_list(head);//发送头结点的地址
 
}
相关文章
|
2天前
|
存储 Java
链表的认识
链表的认识
|
2天前
链表之有头链表
链表之有头链表
|
2天前
|
存储 缓存 C语言
链表修炼指南
链表修炼指南
|
11月前
|
存储 算法 Java
【JavaOj】链表十连问
【JavaOj】链表十连问
78 0
|
存储 算法 Java
一文带你深入了解链表(C)
📖作者介绍:22级树莓人(计算机专业),热爱编程<目前在c阶段>——目标C++、Windows,MySQL,Qt,数据结构与算法,Linux,多线程,会持续分享学习成果和小项目的 📖作者主页:热爱编程的小K 📖专栏链接:C 🎉欢迎各位→点赞👏 + 收藏💞 + 留言🔔​ 💬总结:希望你看完之后,能对你有所帮助,不足请指正!共同学习交流 🐾 ———————————————— 版权声明:本文为CSDN博主「热爱编程的小K」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/qq_7215744
|
存储 JavaScript 前端开发
链表
链表
74 0
|
存储 API
链表——初识链表
链表是一种物理存储单元上非连续、非顺序的存储结构,其物理结构不能只管的表示数据元素的逻辑顺序,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。
84 0
链表——初识链表
|
算法
链表必知必会
链表必知必会
51 0
链表必知必会
|
存储 Java
第 4 章 链表(一)
第 4 章 链表
69 0
|
算法 Java
第 4 章 链表(三)
第 4 章 链表
68 0