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

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

题目:顺序表的实现

一、实验题目

顺序表的实现

二、实验目的

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

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

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

三、实验内容与实现

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

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

#include

#include

int a[10000];

int arrlong()

{

int j;

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

if(a[j]==0)

break;

return j;

}

int Insect(int n,int s) ////插入

{

int j;

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

if(a[j]==0)

break;

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

for(int i=0;i

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

printf("\n");

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

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

a[n]=s;

for(int k=0;k

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

printf("\n");

}

int Search(int p) //查找

{

int j,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");

}

int Delate(int g,int q) //删除{

int j;

g=g-1;

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

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

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

{

if(a[q]==0)

break;

}

for(int i=0;i

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

printf("\n");

}

int main()

{

int y,c;

printf(" 菜单\n");

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

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

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

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

{

int n,x,s;

if(y==0)

{

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

printf("请输入元素的个数:\n");

scanf("%d",&c);

printf("请输入数据:\n");

for(int i = 0;i < c;i++)

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

}

else if(y==1)

{

int L;

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

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

L=arrlong();

if(n<=L)

{

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

scanf("%d",&s);

Insect(n,s);

}

else

{

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

continue;

}

}

else if(y==2)

{

int p;

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

scanf("%d",&p);

Search(p);

}

else if(y==3)

{

int g,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;

}

}

相关文档
最新文档