欢迎来到天天文库
浏览记录
ID:22085484
大小:1.02 MB
页数:11页
时间:2018-10-27
《课程实验报告1线性表》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、WORD文档下载可编辑课程实验报告专业年级2012级软件工程课程名称数据结构C语言描述指导教师申红婷学生姓名王晓霞学号20122205041002实验日期2012.10.31实验地点A3笃行楼A栋306实验成绩教务处制2013年10月31日专业资料分享WORD文档下载可编辑实验项目名称线性表实验实验目的及要求一.目的:1.使学生对线性表的顺序存储结构、基本操作和应用,能通过实验达到掌握和应用的目的。2.使学生对线性表的线性表的链式结构、基本操作和应用,能通过实验达到掌握和应用的目的。二.要求:实验前认真预习实验内容。实验时自觉遵守
2、课堂纪律,严格按操作规程操作,既要独立操作又要与其他同学配合,在实验过程中必须按照实验内容认真做完实验,并认真填写相关实验报告。实验内容线性表的顺序存储结构和线性表的链式结构、基本操和应用。实验步骤1、阅读下面程序,在横线处填写函数的基本功能。并运行程序,写出结果。#include#include#defineERROR0#defineOK1#defineINIT_SIZE5/*初始分配的顺序表长度*/#defineINCREM5/*溢出时,顺序表长度的增量*/typedefintElemTy
3、pe;/*定义表元素的类型*/typedefstructSqlist{ElemType*slist;/*存储空间的基地址*/intlength;/*顺序表的当前长度*/intlistsize;/*当前分配的存储空间*/}Sqlist;intInitList_sq(Sqlist*L);/*初始化顺序表,为其分配存储空间*/intCreateList_sq(Sqlist*L,intn);/*创建一个顺序表*/intListInsert_sq(Sqlist*L,inti,ElemTypee);/*将新元素e插入到顺序表第i个位置*/in
4、tPrintList_sq(Sqlist*L);/*输出顺序表的元素*/intListDelete_sq(Sqlist*L,inti);/*删除第i个元素*/intListLocate(Sqlist*L,ElemTypee);/*查找值为e的元素*/intInitList_sq(Sqlist*L){L->slist=(ElemType*)malloc(INIT_SIZE*sizeof(ElemType));if(!L->slist)returnERROR;L->length=0;L->listsize=INIT_SIZE;retu
5、rnOK;}/*InitList*/专业资料分享WORD文档下载可编辑intCreateList_sq(Sqlist*L,intn){ElemTypee;inti;for(i=0;ilength
6、;i++)printf("%5d",L->slist[i-1]);returnOK;}/*PrintList*/intListInsert_sq(Sqlist*L,inti,ElemTypee){intk;if(i<1
7、
8、i>L->length+1)returnERROR;if(L->length>=L->listsize){L->slist=(ElemType*)realloc(L->slist,(INIT_SIZE+INCREM)*sizeof(ElemType));if(!L->slist)returnERROR;L->li
9、stsize+=INCREM;}for(k=L->length-1;k>=i-1;k--){L->slist[k+1]=L->slist[k];}L->slist[i-1]=e;L->length++;returnOK;}/*ListInsert*//*在顺序表中删除第i个元素*/intListDelete_sq(Sqlist*L,inti){if(L->length==0)return0;if(i<1
10、
11、i>L->length)return0;for(intj;jlength;j++)L->slist[j-1]=L->s
12、list[j];L->length--;return1;专业资料分享WORD文档下载可编辑}/*在顺序表中查找指定值元素,返回其序号*/intListLocate(Sqlist*L,ElemTypee){for(inti=1;i<=L->lengt
此文档下载收益归作者所有