第一次写代码的博客,一个刚刚接触的新手,来这里主要是为了记录自己,方便自己以后浏览,也欢迎大家指正。先来个简单的,动态链表的创建和遍历。

#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
//定义链表的节点
typedef struct LNode
{
int data;
struct LNode *next;
} *LinkList;
//创建链表函数
LinkList CreateList()
{
LinkList LTail, LHead, p;
int i, length,input;
LHead = (LinkList)malloc(sizeof(LNode)); //创建一个表头节点
if (!LHead) exit(); //判断表头是否创建成功
LTail = LHead; //定义一个表尾
LTail->next = NULL; //表尾的指针赋予NULL
printf("请输入你需要的节点数:\n");
scanf_s("%d", &length);
for (i = ; i < length; i++)
{
printf("请输入第%d个节点的数据", i + );
scanf_s("%d", &input);
p = (LinkList)malloc(sizeof(LNode)); //创建一个新的节点
if (!p) exit();
p->data = input; //将输入的input的值赋给新的节点
p->next = NULL; //新的节点将要为链表的表尾将其指针赋NULL.
LTail->next = p; //将表尾与新的节点连接起来
LTail = p; //将新的节点赋给LTail,成为新的表尾
}
return LHead; //返回表头
}
//遍历链表函数
void TravelList(LinkList Head)
{
LinkList p = Head->next; //从链表头节点的下一个节点开始遍历
while (p != NULL) //当链表为空时,停止遍历
{
printf("%d\t", p->data);
p = p->next; //向后移动一个节点
}
}
int main()
{
LinkList head;
head = CreateList();
TravelList(head);
return ;
}

[数据结构】【c语言】链表的创建和遍历的更多相关文章

  1. [数据结构]C语言链表实现

    我学数据结构的时候也是感觉很困难,当我学完后我发现了之所以困难时因为我没有系统的进行学习,而且很多教授都只是注重数据结构思想,而忽略了代码方面,为此我写了这些博文给那些试图自学数据结构的朋友,希望你们 ...

  2. C语言 链表的创建--打印--逆置--新增--删除--排序--释放

    #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #include<string. ...

  3. C语言链表总结(创建,排序,增加,删除)

    #include <stdio.h>#include <stdlib.h> typedef struct NODE{ int data ; struct NODE * pNex ...

  4. 「C语言」单链表/双向链表的建立/遍历/插入/删除

    最近临近期末的C语言课程设计比平时练习作业一下难了不止一个档次,第一次接触到了C语言的框架开发,了解了View(界面层).Service(业务逻辑层).Persistence(持久化层)的分离和耦合, ...

  5. 再次复习数据结构:c语言链表的简单操作

    最近呢,又要面临多次的数据结构与算法方面的试题了,而我呢,大概也重新温习c语言的基本要点快一个月了,主要是针对指针这货的角度在研究c语言,感觉又学到了不少. 现在c指针感觉知道点了,也就匆忙开展数据结 ...

  6. 数据结构C语言版 有向图的十字链表存储表示和实现

    /*1wangxiaobo@163.com 数据结构C语言版 有向图的十字链表存储表示和实现 P165 编译环境:Dev-C++ 4.9.9.2 */ #include <stdio.h> ...

  7. 数据结构( Pyhon 语言描述 ) — — 第4章:数据和链表结构

    数据结构是表示一个集合中包含的数据的一个对象 数组数据结构 数组是一个数据结构 支持按照位置对某一项的随机访问,且这种访问的时间是常数 在创建数组时,给定了用于存储数据的位置的一个数目,并且数组的长度 ...

  8. C语言链表操作模板(添加,删除,遍历,排序)

    C语言链表操作模板,摘自郝斌的C语言视频教程,简单的修改成了纯C格式.当年照着视频学习的时候记录下来的,在使用的时候直接拿来修改修改修改能节约不少时间的. /********************* ...

  9. 【数据结构与算法】(二) c 语言链表的简单操作

    // // main.c // testLink // // Created by lan on 16/3/6. // Copyright © 2016年 lan. All rights reserv ...

随机推荐

  1. Analyze提示:Value stored to &quot;***&quot;is never read

    text这个变量没有被使用,在当前类中搜索'text'这个变量发现仅仅是被赋值并没有被使用. 提示意思是:删除或者凝视这行代码;

  2. 主表a主表b 从表c中有ab两个表中各一个字段a1,b1 从表d中有ab两个表中各一个字段a2,b2

    a1和a2在a表中具有唯一性 b1和b2在b表中具有唯一性 现在需要连接c表和d表 需要分两步来做 1.先让c表join表a和表b select c.*,a.a2,b.b2 from c inner ...

  3. 41. extjs--combobox下拉列表的triggerAction

    转自:https://icrwen.iteye.com/blog/939247 一般combobox的store先load加载数据,然后combobox的mode设置为local,则不会每次下拉列表都 ...

  4. Git文件不显示图标/标识

    初次使用Git服务功能,做了很多探路事情,记录下刚刚遇到的问题 情况:安装了Git应用程序,或者也安装了TortoiseGit-1.8.16.0-64bit(类似SVN工具)后,上传下载文件没有问题, ...

  5. 解决Sublime Text 3 的 Package Control 启动失败问题

    今天在使用Sublime Text的时候,需要了这样的情况         遇到这个问题的时候   我是这样解决的 一. 首先 找到 Package Control的下载地址1  下载地址2.将下载下 ...

  6. RHEL6.5设置行号,安装GCC

    vim ~/.vimrc    set nu    set cindent    set tabstop=4    set shiftwidth=4    syntax on 安装gcc,g++编译器 ...

  7. HDU2564 词组缩写

    2019-06-03 15:00:38 感觉有有种被坑了的感觉,这道题不难,就是一再的W,

  8. 前端性能优化---减少http请求数量和减少请求资源的大小

    减少http请求数量:就是资源的合并 减少http请求大小:就是资源的压缩   一.资源合并的原理:   资源不合并的缺点: 1.文件和文件之间有插入请求----请求a.js,b.js,c.js(三行 ...

  9. python自动化测试学习笔记-4内置函数,处理json

    函数.全局变量 写代码时注意的几点事项: 1.一般写代码的时候尽量少用或不用全局变量,首先全局变量不安全,大家协作的情况下,代码公用容易被篡改,其次全局变量会一直占用系统内容. 2.函数里如果有多个r ...

  10. Java中的异常注意点

    在java中 使用throw关键字抛出异常       使用throws关键字声明异常 public static void main(String[] args) throws Exception{ ...