基于Linux的C语言

这篇博客详细介绍了在Linux系统中使用C语言实现线性表中的顺序表操作,包括顺序表的声明、创建、数据存满判断、数据添加、插入、空表判断、元素删除、修改、查找及显示顺序表的完整过程。通过这些操作,读者可以深入理解数据结构中的顺序表概念及其应用。
摘要由CSDN通过智能技术生成

数据结构

目录

一,线性表

二,顺序表

       1, 顺序表的声明:

       2, 顺序表的创建:

       3, 判断顺序表中的数据是否存满。

       4, 数据的添加:

        5,数据的插入:首先从数据的最后一个开始依次向后移动一个地址直到满足要插入的位置为止。

        6,判断数据是否为空

        7,  删除某个元素:将要删除的元素的位置的后一个元素向左移动一个位置即可。 

        8,  修改某个元素:利用下标直接更改

        9,查找元素:通过循环语句进行判断

       10,显示整个顺序表


数据结构:就是根据需要存储的数据,选择具体的逻辑结构与存储结构⽤来 存储数据。

一,线性表

        概念:在存储的数据程序中,数据之间存在着一定的先后顺序的结构就叫做线性表。

        特点:

                ①:有唯一的第一个元素,也只有唯一的最后一个元素

                ②:元素之间有先后顺序。

                ③:中间数据有且只有一个前驱和后继。

二,顺序表

        概念:用来存储具有先后顺序的数据。

       1, 顺序表的声明:

//声明类型  顺序表
struct list
{
        int data[10];
        int num;
};
~                                                                                                   
~  

       2, 顺序表的创建:

struct list
{
	int data[10];
	int num;
};

//创建顺序表
struct list * create()
{
	struct list *slist = malloc(sizeof(struct list))	//申请空间,创建顺序表。
	
	slist->num = 0;	//->代表的含义是指针访问数据。 设置当前存储的数据为0个。
	return slist;

}

       3, 判断顺序表中的数据是否存满。

struct list
{
	int data[10];
	int num;
};

//创建顺序表
struct list * create()
{
	struct list *slist = malloc(sizeof(struct list))	//申请空间,创建顺序表。
	
	slist->num = 0;	//->代表的含义是指针访问数据。 设置当前存储的数据为0个。
	return slist;

}

//判断顺序表中的数据是否存满。
int full(struct list *p)	//访问数据地址中的数据
{
	if (p->num==10)
	{
		printf("FULL");//如果顺序表中的数据满了则返回1.
		return 1;
	}
	else
	{
		return 0;	//如果顺序表中的数据没满则返回0.
	}
}

 

       4, 数据的添加:

//声明类型  顺序表
struct list
{
	int data[10];
	int num;
};

//创建顺序表
struct list * create()
{
	struct list *slist = malloc(sizeof(struct list))	//申请空间,创建顺序表。
	
	slist->num = 0;	//->代表的含义是指针访问数据。 设置当前存储的数据为0个。
	return slist;

}
//数据的添加
void add(struct list *p ,int age)	//,int age 代表着在顺序表末尾插入一个数据。
{
	p->data[p->num] = age;		//首先访问data这个数据再在其后追加一个数据。
	p->num++
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值