散列查找顺序表的实现实验报告.docx

上传人:b****6 文档编号:16742305 上传时间:2023-07-17 格式:DOCX 页数:10 大小:115.38KB
下载 相关 举报
散列查找顺序表的实现实验报告.docx_第1页
第1页 / 共10页
散列查找顺序表的实现实验报告.docx_第2页
第2页 / 共10页
散列查找顺序表的实现实验报告.docx_第3页
第3页 / 共10页
散列查找顺序表的实现实验报告.docx_第4页
第4页 / 共10页
散列查找顺序表的实现实验报告.docx_第5页
第5页 / 共10页
散列查找顺序表的实现实验报告.docx_第6页
第6页 / 共10页
散列查找顺序表的实现实验报告.docx_第7页
第7页 / 共10页
散列查找顺序表的实现实验报告.docx_第8页
第8页 / 共10页
散列查找顺序表的实现实验报告.docx_第9页
第9页 / 共10页
散列查找顺序表的实现实验报告.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

散列查找顺序表的实现实验报告.docx

《散列查找顺序表的实现实验报告.docx》由会员分享,可在线阅读,更多相关《散列查找顺序表的实现实验报告.docx(10页珍藏版)》请在冰点文库上搜索。

散列查找顺序表的实现实验报告.docx

散列查找顺序表的实现实验报告

 

题目:

顺序表的实现

 

一、实验题目

顺序表的实现

二、实验目的

⑴掌握线性表的顺序存储结构;

⑵验证顺序表及其基本操作的实现;

⑶理解算法与程序的关系,能够将顺序表算法转换为对应的程序。

三、实验内容与实现

⑴建立含有若干个元素的顺序表;

⑵对已建立的顺序表实现插入、删除、查找等基本操作。

实验实现

#include

#include

inta[10000];

intarrlong()

{

intj;

for(j=0;j<12;j++)

if(a[j]==0)

break;

returnj;

}

intInsect(intn,ints)////插入

{

intj;

for(j=0;j<10000;j++)

if(a[j]==0)

break;

printf("要操作的元素\n");

for(inti=0;i

printf("%d",a[i]);

printf("\n");

for(inti=j;i>n-1;i--)

a[i+1]=a[i];

a[n]=s;

for(intk=0;k

printf("%d",a[k]);

printf("\n");

}

intSearch(intp)//查找

{

intj,h;

for(j=0;j<12;j++)

{

if(a[j]==0)

break;

}

for(h=0;h

{

if(a[h]==p)

{

printf("查找到的数在第%d位\n",h+1);

break;

}

}

if(h==j)

printf("查无此数\n");

}

intDelate(intg,intq)//删除

{

intj;

g=g-1;

for(intj=g;j<12;j++)

a[j]=a[j+1];

for(q=0;q<12;q++)

{

if(a[q]==0)

break;

}

for(inti=0;i

printf("%d",a[i]);

printf("\n");

}

 

intmain()

{

inty,c;

printf("菜单\n");

printf("-------------------------------------------------\n");

printf("0建表\n1插入\n2查找\n3删除\n4退出\n");

printf("-------------------------------------------------\n");

while(scanf("%d",&y)!

=EOF)

{

intn,x,s;

if(y==0)

{

memset(a,0,sizeof(a));

printf("请输入元素的个数:

\n");

scanf("%d",&c);

printf("请输入数据:

\n");

for(inti=0;i

scanf("%d",&a[i]);

}

elseif(y==1)

{

intL;

printf("请输入插入的第几位\n");

scanf("%d",&n);//输入

L=arrlong();

if(n<=L)

{

printf("请输入插入的数字\n");

scanf("%d",&s);

Insect(n,s);

}

else

{

printf("输入有误\n");

continue;

}

}

elseif(y==2)

{

intp;

printf("请输入要查找的数字\n");

scanf("%d",&p);

Search(p);

}

elseif(y==3)

{

intg,q,L;

printf("请输入要删除数的位置\n");

scanf("%d",&g);

L=arrlong();

if(L>=g)

{

Delate(g,q);

}

else

{

printf("输入有误\n");

printf("菜单\n");

printf("-------------------------------------------------\n");

printf("0建表\n1插入\n2查找\n3删除\n4退出\n");

printf("-------------------------------------------------\n");

continue;

}

}

elseif(y==4)

break;

else

{

printf("输入有误\n");

printf("菜单\n");

printf("-------------------------------------------------\n");

printf("0建表\n1插入\n2查找\n3删除\n4退出\n");

printf("-------------------------------------------------\n");

continue;

}

printf("菜单\n");

printf("-------------------------------------------------\n");

printf("0建表\n1插入\n2查找\n3删除\n4退出\n");

printf("-------------------------------------------------\n");

}

}

建立顺序表:

插入操作:

查找操作:

删除操作:

插入数据超出顺序表范围:

查找不到输入数据:

删除数据超出顺序表范围:

 

四、实验心得

1.掌握了为数组赋值的方法,深刻理解了数组的含义

2.掌握了为数组排序的方法。

3.正确理解for循环与数组的共同使用方式

4.会灵活的使用函数

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2