`
实学实战
  • 浏览: 15637 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
文章分类
社区版块
存档分类
最新评论

数据结构—链表的基本操作 子函数的方式

 
阅读更多
#include<stdio.h>
#include<stdlib.h>

//  创建结构体链表
typedef int TELM;
typedef struct link{    
<pre name="code" class="plain">TELM <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;"> date1;                                               //数据域</span>
struct students * next; //指针域}stu; // 添加数据函数void *add(){stu *head=NULL;stu *p=NULL;stu *temp=NULL;
TELM <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;"> n;              </span>
printf("请输入数据,为0时退出: ");scanf("%d",&n); while(n!=0){ p=(stu *)malloc(sizeof(stu));p->date1=n;p->next=NULL;if(head==NULL){head=p;}else{ temp->next=p;} temp=p; printf("请输入数据,为0时退出: "); scanf("%d",&n); }return head;}// 修改函数void change(stu *head){stu *p;
TELM <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;"> i;</span>
TELM <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;"> n;</span>
printf("请输入要修改的数据: ");scanf("%d",&i);//初始化指针p=head; while(p!=NULL){if(p->date1==i){printf("请输入新数据 ");scanf("%d",&n);p->date1=n;}p=p->next; }}// 查找函数void search(stu * head){
TELM <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;"> i;</span>
stu *p;int m=1;printf("请输入要查找的数据 ");scanf("%d",&i);p=head;while(p!=NULL){if(p->date1==i){printf("恭喜!存在你查找的数据,它是第个%d数据 \n",m);} p=p->next;m++; } }// 删除函数void del(stu * head){
TELM <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;"> i;</span>
stu *p=NULL;printf("请写出要删除的数据 \n");scanf("%d",&i);p=head;while(1){if(p->next->next){if(p->next->date1==i){p->next=p->next->next;}else{p=p->next;}}else{if(p->next->date1==i)p->next=NULL;break;}}p=head;if(p->date1==i){head=p->next;}}// 输出函数void print(stu *head){ stu *p=head; printf("<-------目前输入的数据有如下------>\n");while(p!=NULL){ printf("%d ",p->date1);p=p->next;}}// 主函数void main(){stu *head=NULL;head=add();print(head);change(head);print(head);search(head);print(head);del(head);print(head);}


分享到:
评论

相关推荐

    数据结构链表,队列,栈和二叉树的各种操作

    数据结构是计算机科学中的核心概念,它...总之,理解和掌握链表、队列、栈和二叉树的基本操作和应用是成为优秀程序员的关键步骤。通过动手实践,你可以深入体会这些数据结构的精髓,从而在解决实际问题时更加游刃有余。

    数据结构-链表逆置算法实现

    这个过程对于理解和掌握链表操作非常有帮助,尤其是对于初学者,它是数据结构实习中的一个典型问题。 链表逆置的实现通常有两种主要方法:迭代和递归。接下来,我们将详细介绍这两种方法。 1. **迭代法**: 迭代...

    C语言数据结构链表排序

    总结来说,掌握C语言中的链表排序和基本操作对于IT专业人士至关重要,这有助于理解和实现更复杂的数据结构和算法。冒泡排序、快速排序和归并排序各有优劣,应根据具体场景选择合适的方法。同时,添加和删除数据是...

    算法大全-面试题-链表-栈-二叉树-数据结构

    数据结构是组织和管理数据的方式,包括数组、链表、栈、队列、树、图等。选择合适的数据结构对于算法设计和程序效率至关重要。例如,数组适合随机访问,而链表适合动态变化大小;栈适合处理后进先出的问题,队列则...

    C语言数据结构基本操作

    以上五种数据结构在C语言中都有其独特的实现方式和应用场景,理解并掌握它们的基本操作对于提高编程能力、解决实际问题至关重要。通过实践这些数据结构,不仅可以提升编程技巧,还能为学习更高级的算法和数据结构...

    C++链表基本操作.doc

    链表是一种重要的数据结构,常用于编程竞赛和实际软件开发中。在C++中,链表可以帮助我们处理动态数据集合,因为它们不依赖于数组的连续内存空间。本篇文章将详细讲解C++中链表的基本操作,包括创建、计数、查找、...

    单向链表实验报告(数据结构)

    2. 学习并实现单向链表的基本操作,包括插入和删除元素。插入操作是在指定位置插入新节点,删除操作则是找到特定元素并移除对应的节点。 实验内容包括以下部分: 1. 创建带头结点的单向链表:随机生成或通过键盘...

    实用单向链表的基本操作函数24个C语言版

    以上就是这24个单向链表操作函数所涵盖的主要概念和用途,它们涵盖了链表操作的基础和一些高级特性,对于学习和理解链表数据结构以及C语言编程非常有帮助。这些操作不仅在理论学习中重要,在实际项目开发中也经常被...

    C语言数据结构基本操作教程

    本教程将深入讲解C语言中的数据结构基本操作,包括链表、栈、队列、树和图等重要概念。 1. 链表:链表是一种动态数据结构,它的元素不一定是连续存储的。每个元素(节点)包含数据和指向下一个节点的指针。链表分为...

    数据结构基本操作 C程序

    在这个“数据结构基本操作 C程序”中,我们可以期待找到一系列的C语言代码,用于演示和实现各种数据结构的基本操作。 首先,让我们从线性数据结构开始。线性数据结构包括数组、链表、队列和栈。数组是最基础的数据...

    链表等基本数据结构的实现

    本教程将探讨四个基本数据结构的实现:链表、堆栈、队列和树。这些结构在各种编程语言中都有广泛的应用,特别是在操作系统、数据处理和软件开发中。 **链表** 是一种线性数据结构,其元素(节点)不连续存储,而是...

    数据结构实验 排序数基本操作

    ### 数据结构实验——排序数基本操作 #### 实验目的 1. **理解二叉树链表结构:** - 学习二叉树链表的基本组成及其特点。 - 了解二叉树链表如何存储数据。 2. **熟悉二叉排序树的构建过程:** - 通过实践掌握...

    数据结构 建立二叉树二叉链表存储结构实现有关操作 实验报告

    ### 数据结构:建立二叉树二叉链表存储结构实现有关操作 #### 一、实验题目及背景 本次实验的主要任务是通过建立二叉树的二叉链表存储结构来实现特定的操作。二叉树是一种重要的非线性数据结构,在计算机科学中有...

    链表的基本操作,插入删除查找等

    综上所述,链表的基本操作涵盖了数据结构和算法的核心概念,是理解和掌握数据结构的基础,对于任何希望深入学习计算机科学的人来说都至关重要。通过实现和实践这些操作,可以提升对数据结构的理解,为更高级的数据...

    易语言简单UI框架链表结构

    在这个“易语言简单UI框架链表结构”项目中,我们主要探讨的是如何利用易语言来构建一个用户界面(UI)框架,并且涉及到链表数据结构的应用。 链表是计算机科学中的一种数据结构,它不同于数组,不需要连续的内存...

    数据结构 孩子兄弟链表

    数据结构中的孩子兄弟链表(Child Sibling List)是一种用于表示树形结构的特殊链表。与传统的链表相比,孩子兄弟链表在每个节点上不仅包含指向其第一个孩子的指针,还包含一个指向前一个兄弟节点的指针,这使得它在...

    数据结构链表顺序表

    数据结构属虚标链表

    数据结构C语言 数组链表,树,图,矩阵,搜索查找

    本资料包“数据结构C语言 数组链表,树,图,矩阵,搜索查找”提供了一个全面的学习资源,旨在帮助学习者深入理解这些基本概念。 数组是数据结构的基础,它是一组相同类型元素的集合,可以通过索引来访问每个元素。...

Global site tag (gtag.js) - Google Analytics