数据结构实验报告 线性表顺序存储结构 c语言,C语言 数据结构 线性表 顺序表 线性表的顺序存储结构...

#include using namespace std;

#define MAXSIZE 10//定义顺序表的长度

typedef struct{

char  data[MAXSIZE];//就是char data[100]  MAXSIZE就是顺序表的最大长度

int       length;   //这个是结构体里的数据的个数

}ArrayList, *List;

//初始化顺序表

void init(ArrayList *list){

list->length = 0;

cout << "顺序表初始化成功!!!\n" << endl;

}

//输出全部的顺序表元素

void getAll(ArrayList *list){

for(int i=0;i < list->length;i++){

printf("第 %d 个元素是: %c\n",i,list->data[i]);

}

}

//在顺序表的最后添加元素

int append(ArrayList *list,char data){

if(list->length > MAXSIZE - 1){

cout << "顺序表已满!!!\n" << endl;

return 0;

}

list->data[list->length] = data;

list->length++;

return 1;

}

//移除顺序表中的第index个元素

int remove(ArrayList *list,int index){

if (index<0 || index>list->length) {

cout << "索引下标越界!!!\n" << endl;

return 0;

}

for (int i=index;i<=list->length;i++) {

list->data[i]=list->data[i+1];

}

list->length--;

return 1;

}

//在顺序表的第index位置插入元素

int insert(ArrayList *list,int index,char data){

if (index<0||index>=list->length) {

cout<         return 0;

}

for (int i=list->length;i>index;i--){

list->data[i+1]=list->data[i];

}

list->data[index]=data;

list->length++;

return 1;

}

//更改顺序表第index个的内容

int replace(ArrayList *list,int index,char data){

if (index<0||index>list->length) {

cout<         return 0;

}

list->data[index]=data;

return 1;

}

//获取顺序表的长度

int length(ArrayList *list){

if (list=NULL){

cout<         return 0;

}

return list->length+1;

}

void main() {

ArrayList list;

init(&list);

for (int i = 0; i <= 11; i++) {

append(&list,'a'+i);

}

remove(&list,2);

insert(&list,2,'c');

replace(&list,2,'x');

getAll(&list);

system("pause");

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值