`
myway84
  • 浏览: 202953 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
文章分类
社区版块
存档分类
最新评论

c语言顺序表的建立

阅读更多
#include<stdlib.h>
#include<stdio.h>
#define LIST_INIT_SIZE 10 /*存储空间初始分配量*/
#define LISTINCREMENT 10  /*存储空间分配增量*/

typedef struct
{
  int *elem;    /*首地址*/
  int length;   /*当前长度*/
  int listsize; /*存储容量*/
}sqlist;

void initlist(sqlist *v)
{/*顺序表的初始化算法*/
  v->elem=(int *)malloc(LIST_INIT_SIZE*sizeof(int));
  if(!v->elem)
   {
    printf("申请空间失败!!!\n");
    exit(0);
   }
  else
  {
     v->length=0;
     v->listsize=LIST_INIT_SIZE;
  }
}

void setlist(sqlist* v)
{/*利用数组建立顺序表*/
  int y,i,j;
  sqlist new1;
  printf("连续输入数据{初存10},当输入0时停止!!!\n");
  scanf("%d",&y);
  while(y!=0)
   {
     v->elem[v->length]=y;
     v->length++;
    if(v->length>=v->listsize)
     {
      new1.elem=(int *)realloc(v->elem,(v->listsize+LISTINCREMENT)*sizeof(int));
      if(!new1.elem)
       {
        printf("存储空间分配失败!!!\n");
        exit(0);
       }
      else
      {
        v->elem=new1.elem;/*原地址只想新分配的地址*/
        v->listsize=v->listsize+LISTINCREMENT;
       
      }

     }
  
    scanf("%d",&y);
   }
}

void printlist(sqlist v)
{/*利用数组输出顺序表*/
 int i;
 printf("输出顺序表:\n");
 for(i =0;i<v.length;i++)
  {
    printf("%d",v.elem[i]);
    printf("\n");
  } 
}

int main()
{
 sqlist v;
 initlist(&v);
 setlist(&v);
 printlist(v);
 printf("\n");
 return 0;
}
分享到:
评论

相关推荐

    顺序表的基本操作C语言

    顺序表的基本操作C语言 顺序表是一种基本的数据结构,在计算机科学中广泛应用。以下是关于顺序表的基本操作的知识点: 1. 初始化 顺序表的初始化是指创建一个空的顺序表,并分配所需的内存空间。在C语言中,可以...

    C语言顺序表简单实现

    ### C语言顺序表简单实现详解 #### 一、顺序表简介 顺序表是线性表的一种存储结构,其中的数据元素在内存中是连续存放的。本文档将通过一系列函数介绍如何在C语言中实现基本的顺序表操作。 #### 二、顺序表的基本...

    C语言数据结构 顺序表的建立与插入

    "C语言数据结构 顺序表的建立与插入" 本文主要讲解了C语言中顺序表的建立和插入操作。顺序表是一种基本的数据结构,广泛应用于计算机科学和信息技术领域。本文通过实验和代码实现,详细介绍了顺序表的建立、插入...

    数据结构c语言 顺序表操作

    本主题聚焦于“数据结构C语言中的顺序表操作”,这是一种基础但至关重要的数据结构概念。 顺序表是由一组相同类型的数据元素构成的线性序列,这些元素在内存中按顺序存储。在C语言中,我们通常使用数组来实现顺序表...

    c语言 顺序表的功能实现

    本文将深入探讨顺序表的概念、结构以及如何通过C语言实现其各种操作,如建立、查找、求长度、插入、删除、输出、清空和销毁。 顺序表的基本思想是将一组具有相同类型的数据元素顺序地存储在一片连续的内存空间里,...

    c语言数据结构顺序表合并

    1.建立两个顺序表(通过随机函数生成); 2.排序(升序),输出合并前的结果; 3.对这两个顺序表进行合并(保持升序); 4.输出合并结果

    顺序表建立的超市管理信息系统

    数据结构c语言顺序表建立的超市管理信息系统

    c语言顺序表删除和插入

    顺序表删除和插入,主要运用了顺序表的建立,插入,和删除等功能,对学习数据结构的也是很有用的

    顺序表的基本操作C语言描述

    经过VC++的调试没问题··改造主函数,使其功能灵活、清晰,如通过键盘输入要插入链表的...(B)输出顺序表的长度 (C)输出顺序表的第3个元素 (D)在第2个位置上插入元素44 (E)删除顺序表第4个元素 (F)输出顺序表

    C语言顺序表的操作集合

    本主题聚焦于C语言实现的顺序表,这是数据结构中最基础也是最直观的一种类型。顺序表分为静态顺序表和动态顺序表,两者在内存管理和操作上有所不同。 静态顺序表是在程序编译时就预分配了固定大小的数组来存储数据...

    C语言的基本程序 链表顺序表等

    在“C语言的基本程序 链表顺序表等”这个主题中,我们将深入探讨C语言的基础知识,特别是链表和顺序表这两种数据结构。 一、C语言基础 1. 变量与数据类型:C语言提供多种数据类型,如int、float、char等,用于存储...

    C语言数据结构顺序表 学生表 学生成绩管理系统.zip

    本项目以"C语言数据结构顺序表 学生表 学生成绩管理系统"为主题,涉及到的核心知识点包括顺序表、学生表的设计以及如何用C语言构建一个简单的学生成绩管理系统。 首先,我们来讨论“顺序表”。顺序表是一种基础的...

    C语言实现顺序的建立、查找、插入、删除等基本操作

    C语言实现顺序的建立、查找、插入、删除等基本操作

    C语言顺序表的基本操作

    printf("\n| 1——建立顺序表 |"); printf("\n| 2——插入元素 |"); printf("\n| 3——删除元素 |"); printf("\n| 4——按位置查找元素 |"); printf("\n| 5——按元素值查找其在表中位置 |"); printf("\n| 6——求...

    数据结构基于C语言实现的顺序表。程序

    数据结构基于C语言实现的顺序表. #include #include #define MAXSIZE 100/* 定义二叉树节点类型 */ typedef struct node { char data; struct node *lchild, *rchild; }BTNode; BTNode* CreatBitTree()/* 递归...

    新建文件夹_C语言_顺序表_

    本文将深入探讨“顺序表”的概念、实现方式以及在C语言中的操作,包括顺序表的建立、删除和插入等步骤。 顺序表是一种线性数据结构,它的特点是元素在内存中按照它们的逻辑顺序进行连续存储。每个元素都有一个固定...

    顺序表及其操作

    创建顺序表 2. 输入数据 3. 插入数据 4. 删除数据 5. 求顺序表并集 6. 删除重复元素 7. 冒泡排序 8. 比较顺序表大小 9. 前N个元素和后M个元素互换 10. 删除重复元素(2) 0....

    顺序表的建立及遍历含C语言示例.docx

    ### 顺序表的建立及遍历含C语言示例 #### 一、顺序表的概念与特点 顺序表是一种常见的线性数据结构,在计算机科学中被广泛应用于存储一系列具有相同类型的数据项。它的一个显著特点是所有元素都存储在一个连续的...

    编写一个完整顺序表的程序

    (1) 建立一个顺序表,含有n个数据元素。 (2) 输出顺序表及顺序表的长度。 (3) 在顺序表给定的位置i,插入一个值为x的结点。 (4) 在顺序表中删除值为x的结点或者删除给定位置i的结点。 (5) 将顺序表逆置,...

    利用C语言实现顺序表的实例操作

    在C语言中,实现顺序表涉及到动态内存管理、元素的插入和删除等操作。以下是对标题和描述中涉及的知识点的详细说明: 1. **顺序表的定义**: 顺序表是由一组具有相同类型的数据元素构成的线性结构,这些元素在内存...

Global site tag (gtag.js) - Google Analytics