版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
合照学浣
HEFEIUNIVERSITY
计算机科学与技术系
实验报告
专业名称计算机科学与技术__________
课程名称《数据结构》____________
项目名称顺序表查找_______________
班级____________
学号_________________
姓名____________________
同组人员_______________先____________________
实验日期
一、实验目的与规定:
(简述本次实验规定达成的目的,涉及到的相关知识点,实验的具体规定。)
(一)实验目的:
应用顺序表来实现对数据的查找
(二)实验规定:
用顺序表实现对数据进行查找
(三)实验环境:
VC++6.0.
二、实验内容
#inc1ude<stdio.h>
#include<stdlib.h>
#inc1ude<ma11oc.h>
#defineERROR0
#defineOK1
#defineINIT_SIZE5/*初始分派的顺序表长度*/
#defineINCREM5/*溢出时,顺序表长度的增量*/
typedefintElemType;/*定义表元素的类型*/
typedefstructSq1ist{
»E1emType*slist;/*存储空间的基地址*/
int1ength;/*顺序表的当前长度*/
intlistsize;/*当前分派的存储空间*/
}Sqlist;
intInitList_sq(Sq1ist*L);
intCreateList_sq(Sq1ist*L,intn);
intListinsert_sq(Sqlist*L,inti,E1emType
e);
intPrintList_sq(Sqlist*L);
intListDe1ete_sq(Sqlist*L,inti);
intListLocate(Sqlist*L,E1emTypee);
//初始化顺序表
intInitList_sq(Sqlist*L){
L—>s1ist=(ElemType*)malloc(INIT_SIZE*sizeof(E
1emType));
if(!L->slist)returnERROR;
L->1ength=0;
L->listsize=INITSIZE;
returnOK;
}/*InitList*/
〃创建顺序表
intCreateList_sq(Sq1ist*L,intn){
ElemTypee;
inti;
for(i=0;i<n;i++){
printf(^inputdata%d",i+1);
wprintf(":");
scanf("%d",&e);
if(!Listlnsert_sq(L,i+1,e))
returnERROR;
)
returnOK;
}/*CreateList*/
/*输出顺序表中的元素*/
intPrintList_sq(Sq1ist*L){
inti;
for(i=l;i<=L—>1ength;i++)
printf("%-5d”,L->slist[i—1]);
printf("\n");
returnOK;
}/*PrintList*/
//在顺序表中插入
intListInsert_sq(Sqlist*L,inti,ElemTypee){
intk;
oif(i<1||i>L->1ength+1)
returnERROR;
®if(L->1ength>=L->1istsize){
»L->slist=(ElemType*)realloc(L->s1ist,
。(INIT_SIZE+INCREM)*sizeof(ElemType));
if(!L->slist)
returnERROR;
L->listsize+=INCREM;
}
for(k=L->1ength-1;k>=i-l;k—){
L->slist[k+1]=k;
}
L—>slist[i-1]=e;
L->1ength++;
returnOK;
}/*Listlnsert*/
/*在顺序表中删除第i个元素*/
intListDelete_sq(Sqlist*L,inti)
,intj;
if(L->1ength<0){
sprintf("顺序表为空!\n");
returnERROR;
elseif(i<0||(i>L->length))
«Printf("i的参数犯错!\n");
«returnERROR;
6}
else
(
®for(j=i;j<=L->length;j++)
aL->slist[j-1]=L->slist[j];
»L->1ength—;
»returnOK;
/*在顺序表中查找指定值元素,返回其序号*/
intListLocate(Sqlist*L,E1emTypee)
inti,z=0;
»for(i=0;i<L->length;i++)
®{
if(L->slist[i]==e)
s(
。printf(〃查找的元素%d在第%d位置\n",e,
i+1);
,z=1;
»//returnOK;
g}
0
printf(〃没有查找到相应的数\n〃);
returnERROR;
}
//主函数
intmain(){
Sqlists1;
intn,i;
ElemTypee;
printf(〃请创建表,输入顺序表的元素个数:;/*输入顺
序表的元素个数*/
scanf("%d",&n);
if(n>0){
d
printf("\n1—CreateSqlist:\n");
InitList_sq(&sl);
CreateList_sq(&sl,n);
printf("\n2—PrintSqlist:\n");
PrintList_sq(&s1);
«system("c1s");
}else
printf("ERROR");
sprintf("------------------------------------请选择操作方式
---------------------------------'n")•
(printfC\t1:查找\t2:删除\t3:输出表\t
0:退出\n输入操作数:〃);
oscanf("%d”,&n);
while(n)
,printf("\n链表元素:\n");
PrintList_sq(&s1);
®if(n==1){
叼rintf("\n请输入想要查找的元素:");
烟canf("%d",&e);
o»ListLocate(&sl,e);
}
oif(n==2){
®printf("\n请输入想要删除元素的位置:");
scanf("%d",&i);
oListDelete_sq(&s1,i);
g}
8if(n==3)
4(
»printf("\n链表元素:\n");
4PrintList_sq(&sl);
)
printf("\t-----------------------------------------请选
择操作方式-----------------------------");
»printf(,?\t1:查找\t2:删除\t0:退出\n输入操
作数:〃);
»scanf("%d”,&n);
return0;
}三、实验分析与小结
(实验过程中的问题分析、产生的因素以及解决方法;实验结果分析;有待优化思
绪)
(一)实验结果截图
一遹施择操作方式一
1:查找2:删除3:输出表0:退出
输入操作数:」
一请选择操作方式一
1-查找2:删除3:输出表0=退出
输入操作数:彳
隆表元素:
64
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年泰和县新睿人力资源服务有限公司面向社会公开招聘项目制工作人员笔试重点试题及答案解析
- 2025中国中信金融资产国际控股有限公司社会招聘考试重点题库及答案解析
- 贵州省2023贵州丹寨县文体广电旅游局机关事业单位招聘编外文化志愿者笔试历年参考题库典型考点附带答案详解(3卷合一)
- 云南省2024中共云南省委党校(云南行政学院)招聘17人笔试历年参考题库典型考点附带答案详解(3卷合一)
- 2026年福州工商学院单招职业倾向性考试模拟测试卷附答案
- 2026年石家庄信息工程职业学院单招职业适应性测试题库附答案
- 铜陵市青少年体育运动学校面向安徽省退役运动员专项公开招聘体育教练员考试题库及答案1套
- 郑州市中铁七局集团第五工程有限公司2026届高校毕业生招聘30人备考题库及答案1套
- 重庆市万盛经开区教育事业单位2025年面向应届高校毕业生考核招聘工作人员备考题库附答案
- 浙江省国贸集团2026校园招聘备考题库及答案1套
- 2025四川成都东方广益投资有限公司下属企业招聘9人备考题库及完整答案详解1套
- 植物茎的教学课件
- 2024大学思政课人生观
- 2025年安全管理员岗位招聘面试参考题库及参考答案
- 2025山西太原市面向劳务派遣人员招聘2人笔试历年备考题库附带答案详解试卷3套
- 道路清扫保洁服务投标方案
- 应对海关缉私警察面试常见问题与答题技巧
- 光伏运维合同
- 水电建设工程质量监督检查大纲
- 老年病科护理组长岗位竞聘
- 2025-2030中国碘化铑行业需求潜力及产销规模预测报告
评论
0/150
提交评论