栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言实现顺序表增删改查

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言实现顺序表增删改查

C语言实现顺序表增删改查 main.c
#include "test.h"

void test();

ElementType dataArray[] = {
    {1,"侠客行"},
    {2,"将进酒"},
    {3,"神来之笔"},
    {4,"青莲剑歌"}
};


int main()
{
    test();
    return 0;
}


void test(){
    SeqList  seqList;
    InitList(&seqList,dataArray,4);
    PrintList(&seqList);
    DeleteElement(&seqList,3);
    printf("删除index = 3,后...n");
    PrintList(&seqList);
}


test.c
#include "test.h"

void InitList(SeqList * seqList,ElementType * elemArray,int length){
    if (length > MAX_SIZE){
        printf("超出数组最大容量。");
    }
    seqList->length = 0;
    for (int i=0;ilength + 1 >= MAX_SIZE){
        printf("数组已满。");
        return;
    }
    if (index < 0 || index > MAX_SIZE-1){
        printf("输入下标不合法。");
        return;
    }
    if (index > seqList->length){
        printf("输入下标超过数组长度。");
        return;
    }
    for (int i=seqList->length-1;i>=index;i--){
        seqList->data[i+1] = seqList->data[i];
    }
    seqList->data[index] = element;
    seqList->length++;
}

void PrintList(SeqList * seqList){
    for (int i=0;ilength;i++){
        printf("%dt%s.n",seqList->data[i].id,seqList->data[i].name);
    }
}


void DeleteElement(SeqList * seqList,int index){
    if (index > MAX_SIZE-1 || index<0){
        printf("输入下标不合法.n");
        return;
    }
    if (seqList->length == 0){
        printf("数组长度为0.不能删除.n");
        return;
    }
    if (index > seqList->length){
        printf("输入下标超出数组长度.n");
        return;
    }
    for (int i= index;i <= seqList->length-2 ;i++){
        seqList->data[i] = seqList->data[i+1];
    }
    seqList->length--;
}


test.h
#ifndef TEST_H_INCLUDED
#define TEST_H_INCLUDED

#include 
#include 

#define MAX_SIZE 10

typedef struct {
    int id;
    char * name;
}ElementType;

typedef struct {
    ElementType data[MAX_SIZE];
    int length;
}SeqList;

void InitList(SeqList * seqList,ElementType * elemArray,int length);

void InserElement(SeqList * seqList,int index,ElementType element);

void PrintList(SeqList * seqList);

void DeleteElement(SeqList * seqList,int index);

#endif // TEST_H_INCLUDED


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/290294.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号