.
.
姓名: 关宏新 学号: 089074114 班级: 计084班 指导教师: 储岳中
.
实验一 线性表基本操作的实现
一、 实验目的
1、 掌握使用Turbo C2.0上机调试线性表的基本方法;
2、 掌握线性表的基本操作:插入、删除、查找等运算在顺序存储结构和链式存储结构上的运算。 二、实验要求
1、 链表插入、删除和查找算法的代码; 2、 程序运行结果及分析; 3、 实验总结。 三、实验内容
1、 认真阅读和掌握本实验的参考程序。
2、 上机运行本程序,并完善删除、查找等运算。 3、 保存程序的运行结果,并结合程序进行分析。
4、 按照你对链表操作需要,重新改写算法并运行,实现链表的插入、删除、查找等运算,并保存运行结果。
四、程序流程图、算法及运行结果 1-1
#include \#include \#define MAXSIZE 100 struct SeqList {
int data[MAXSIZE]; int length; };
typedef struct SeqList *PSeqList;
PSeqList creaeNullList_seq() {
PSeqList palist=(PSeqList)malloc(sizeof(struct SeqList)); if(palist!=NULL) {
palist->length=0; return(palist); }
printf(\ return NULL; }
int isNullList_seq(PSeqList palist) {
return (palist->length==0); }
int insertPre_seq(PSeqList palist,int p,int x) {
.
.
int q;
if(palist->length>=MAXSIZE) {
printf(\ return(0); }
if(p<0 || p>palist->length) {
printf(\ return(0); }
if(isNullList_seq(palist)) {
palist->data[0]=x; palist->length=1; return(1); }
for(q=palist->length-1;q>=p;q--)
palist->data[q+1]=palist->data[q] ; palist->data[p]=x;
palist->length= palist->length+1; return(1); }
void main() {
int i;
PSeqList list;
list=creaeNullList_seq();
printf(\插入前的顺序表为:\\n \ for(i=0;i<=9;i++) {
insertPre_seq(list,i,i*i);
printf(\ }
insertPre_seq(list,5,55);
printf(\插入后的顺序表为:\\n \ for(i=0;i
printf(\ printf(\
getch(); }
.
《数据结构》实验报告



