#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> #include<assert.h> #include<string.h> #define MAXSIZE 1000 typedef 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; }
c语言:【顺序表】静态顺序表的删除指定位置元素Erase、删除指定元素Remove
原创
©著作权归作者所有:来自51CTO博客作者韩静静的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
1.顺序表的实现——C语言
顺序表各种操作的代码实现
顺序表 冒泡排序 算法 随机数 -
顺序表的动态分配(C语言版)
顺序表的动态分配代码实录
顺序表 动态分配 C语言 -
顺序表指定元素删除
问题描述:本题要求实现一个函数,要求将顺序表的第i个元素删掉
顺序表指定元素删除 List #include 指定位置 -
顺序表指定位置插入元素
问题描述:本题要求实现一个函数,在顺序表的第i个位置插入一个新的数据元
顺序表指定位置插入元素 顺序表 函数返回值 List -
删除list中的指定valve R语言 arraylist删除指定位置元素
在工作中我们经常需要在遍历集合的时候删除元素,一开始我也以为只要在增强for循环中remove元素就可以了,现实给了我一个巴掌那就是ConcurrentModificationException。首先我们创建一个实体类 public class User { private String name; private String adree; public Us
删除list中的指定valve R语言 arraylist删除指定元素 java list 删除元素 怎么遍历list集合赋值 User