#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
#include<string.h>#define MAXSIZE 1000typedef int DateType;
typedef struct SeqList
{DateType arr[MAXSIZE];size_t size;
}SeqList;//打印静态顺序表
void PrintSeqList(SeqList *Seq)
{assert(Seq);if (Seq->size == 0){printf("静态顺序表当前为空!\n");return;}for (int index = 0; index < Seq->size; index++){printf("%d-> ", Seq->arr[index]);}
}//初始化
void init(SeqList *Seq)
{assert(Seq);memset(Seq->arr, 0, sizeof(DateType)* MAXSIZE);Seq->size = 0;
}//尾插
void PushBack(SeqList *Seq,DateType x)
{if (Seq->size >= MAXSIZE){printf("静态顺序表当前已满,无法插入!\n");return;}Seq->arr[Seq->size++] = x;
}//void Erase(SeqList *Seq, int pos)
//{
//    assert(Seq);
//    if (Seq->size <= 0)
//    {
//        printf("静态顺序表当前已空,无法删除!\n");
//        return;
//    }
//    for (int index = pos; index < Seq->size; index++)
//    {
//        Seq->arr[index] = Seq->arr[index + 1];
//    }
//    Seq->size--;
//}void Remove(SeqList *Seq, DateType x)
{assert(Seq);int tag = 0;if (Seq->size <= 0){printf("静态顺序表当前已空,无法删除!\n");return;}int index = 0;for (; index < Seq->size; index++){if (Seq->arr[index] == x){for (; index < Seq->size; ++index){Seq->arr[index] = Seq->arr[index + 1];}--Seq->size;}tag = 1;}if (tag == 0)printf("未找到该元素!\n");
}void Test2(SeqList *Seq)
{init(Seq);PushBack(Seq, 0);PushBack(Seq, 1);PushBack(Seq, 2);PushBack(Seq, 3);PushBack(Seq, 4);PushBack(Seq, 5);PrintSeqList(Seq);printf("\n");/*Erase(Seq, 2);*/Remove(Seq, 2);PrintSeqList(Seq);printf("\n");}int main()
{/*SeqList Seq;Test1(&Seq);*/SeqList Seq;Seq.size = 0;Test2(&Seq); system("pause");return 0;
}

转载于:https://blog.51cto.com/10740184/1743161

c语言:【顺序表】静态顺序表的删除指定位置元素Erase、删除指定元素Remove相关推荐

  1. 静态树表查找算法及C语言实现,数据结构 静态树表查找算法

    友情提示:此篇文章大约需要阅读 6分钟55秒,不足之处请多指教,感谢您的阅读. 算法思想 在使用查找表中有n个关键字,表中的每个关键字被查找的概率都是1/n.在等概率的情况下,使用折半查找算法最优. ...

  2. c语言数组指定位置插入和删除_玩转C语言链表,单链表/双向链表的建立/遍历/插入/删除...

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

  3. c语言数组指定位置插入和删除_Apache POI在指定位置插入表格

    接到的需求是在模板表格的指定位置再插入表格.比如在模板的${proTable}处插入表格. 依赖的包 org.apache.poi poi 3.15org.apache.poi poi-ooxml 3 ...

  4. 1-2、数据结构线性表之顺序表的基本操作插入、删除、遍历、初始化

    学习需要记录,更需要温习! 上一篇我们总结了什么是线性表,线性表的ADT类型,线性表的两种存储类型顺序存储结构和链式存储结构,今天正式进入线性表的顺序存储结构的总结和归纳,也就是数据结构的线性表的顺序 ...

  5. 线性表的顺序表示和实现(严蔚敏版)

    线性表的顺序表示和实现 定义变量 初始化线性表 插入元素 删除线性表中的元素 查询 输出线性表 合并两个表 逻辑运行(main) 后续 定义变量 #include<stdio.h> //输 ...

  6. java中线性表删除元素和删除指定元素_线性表的插入和删除(Java版)

    1.线性表的定义: (1).线性表是一种可以在任意位置插入和删除数据元素操作.由n(n≥0)个相同类型数据元素a0, a1,-, an-1组成的线性结构.除了第一个元素没有前驱元素和最后一个元素没有后 ...

  7. Hive 之 分区表,外部表,桶表

    转自: http://chengjianxiaoxue.iteye.com/blog/2167036 1 受控表(managed table): hive中将创建的表和实际对应hdfs目录结构和文件相 ...

  8. c语言实现顺序表源程序,C语言实现静态顺序表的实例详解

    C语言实现静态顺序表的实例详解 线性表 定义一张顺序表也就是在内存中开辟一段连续的存储空间,并给它一个名字进行标识.只有定义了一个顺序表,才能利用该顺序表存放数据元素,也才能对该顺序表进行各种操作. ...

  9. c语言:【顺序表】静态顺序表的初始化、打印、尾插、尾删

    #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> #include<asser ...

  10. C语言实现静态顺序表

    1.用于存放声明的头文件 #ifndef __SEP__LIST__ #define __SEP__LIST__#define _CRT_SECURE_NO_WARNINGS 1 #include & ...

最新文章

  1. 栖息在生态办公室,裸心社与USGBC达成战略合作
  2. 《精通自动化测试框架设计》目录—导读
  3. 【转】【C#】判断两个文件是否相同
  4. SecureCRT安装的注意事项
  5. register_chrdev深入分析
  6. 使用url参数在C4C的html5 UI和Fiori UI之间做切换
  7. GitHub 年度报告正式发布,JavaScript 霸榜、TypeScript 爆发!
  8. 13.C++ vector 操作
  9. sql优化的N种方法_持续更新
  10. 蓝凌工作ekp开发使用一些js编写开发记录
  11. 安卓虚拟摄像头_iPhone 的第四颗摄像头位置,为什么给了激光雷达?
  12. Ever-Flowers IN Never-Dream(16)
  13. 小程序实现扫码识别二维码内容
  14. C++项目实战-环境的搭建
  15. iptables、firewalld防火墙详解
  16. Linux搭建YUM仓库
  17. kubernetes kubelet挂掉问题分析
  18. Android手机摄像头编程入门
  19. 《Linux内核分析》 第二节 操作系统是如何工作的
  20. geo ftp环境变量 export source ~/.bashrc Linux中filezilla下载ftp文件 ftp.ncbi.nlm.nih.gov linux下载 ftp下载geo非原始数

热门文章

  1. ShipConstructor 2006 v1.00 1CD(加拿大船舶建造软件)
  2. 亲,C/C++/C#居然薄弱叻?不会吧,现在是HTML5+CSS3+javascript的时代?
  3. VS编译时自动引用Debug|Release版本的dll
  4. 给WPS添加快捷键 智能粘贴 粘贴纯文本
  5. MFC防止进程重复建立
  6. JavaScript-Tool:CKFinder
  7. 在Linux环境下安装MYSQL
  8. BZOJ 3160: 万径人踪灭 [fft manacher]
  9. hdwiki 学习笔记 01
  10. 在gfs2中关闭selinux