| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 237 人关注过本帖
标题:怎么这道关于顺序表的难题怎么做?求指点
只看楼主 加入收藏
熊小白
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2018-9-19
结帖率:0
  已结贴   问题点数:20  回复次数:1   
怎么这道关于顺序表的难题怎么做?求指点
一、实验目的
  1.掌握顺序表的存储结构
  2.验证顺序表及其基本操作的实现
  3.理解算法与程序的关系,能够将顺序表算法转换为对应的程序
二、实验内容
  1.初始化顺序表
  2.在顺序表的第i位插入元素
  3.删除顺序表的第i个元素
  4.输出顺序表
  5.判断顺序表是否为空
  6.判断顺序表是否满
  7.求顺序表第i个元素的值
  8.查找值为x的元素
三、算法设计
用结构体来描述顺序表,结构体中包括表的大小、存放数据的数组、表的最大容量三个数据属性。为简单起见,本实验设定线性表的数据元素为int型。
结构体定义如下:
typedef int datatype;
typedef struct {
  datatype *data;
  int size;
  int maxsize
} SqList;
要求实现顺序表的初始化、插入、删除、判空、判满、求值、查找、输出等操作。
四、程序实现
程序的部分代码如下,请将未完成的部分编写完整并在计算机上运行。
#include <stdio.h>
#include <malloc.h>
#define INIT_SIZE 100
typedef int dataType;
typedef struct {
dataType *data;
int size;
 int maxsize
} SqList;

//初始化顺序表
void Initlist(SqList *l) {
  l->data = (dataType *) malloc(INIT_SIZE * sizeof(dataType));
  l->size = 0;
  l->maxsize = INIT_SIZE
}

//在顺序表l的第k个位置插入元素x
void Insert(SqList *l, int k, dataType x)  {

}

//删除顺序表l的第k个元素
void Delete(SqList *l, int k)  {

}

//判断顺序表是否为空
int Empty(SqList *l)  {

}

//判断顺序表是否满
int Full(SqList *l)  {

}

//求顺序表l中第i个元素的值
dataType GetData(SqList *l, int i)  {

}

//在顺序表中查找值为x的元素
int Locate(SqList *l, dataType x)  {

}

//输出顺序表
void Print(SqList *l)  {

}

int main()  {
  SqList list, *pList = &list;
  InitList(pList);
  Insert(pList, 1, 10);
  Insert(pList, 1, 20);
  Delete(pList, 2);
  Insert(pList, 1, 30);
  Insert(pList, 1,40);
  Print(pList);
  Printf(“%d”, GetData(pList, 2));
}
2018-09-19 19:48
请大师指点
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:3
帖 子:6
专家分:20
注 册:2018-9-13
  得分:20 
你着急看吗? 我晚点帮你弄

2018-09-20 16:40







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.059202 second(s), 8 queries.
Copyright©2004-2019, BCCN.NET, All Rights Reserved