输出在顺序表{3,6,2,10,1,8,5,7,4,9},中采用顺序方法查找关键字5的过程。

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

/*

设计一个程序exp9-1.cpp,

输出在顺序表{3,6,2,10,1,8,5,7,4,9}

中采用顺序方法查找关键字5的过程。

*/

#include

#define MAXL 100 //定义表中最多记录个数

typedef int KeyType;

typedef char InfoType[10];

typedef struct

{

KeyType key; //KeyType为关键字的数据类型InfoType data; //其他数据

} NodeType;

typedef NodeType SeqList[MAXL]; //顺序表类型

int SeqSearch(SeqList R,int n,KeyType k) //顺序查找算法

{

int i=0;

while (i

{

printf("%d ",R[i].key);

i++; //从表头往后找

}

if (i>=n)

return -1;

else

{

printf("%d",R[i].key);

return i;

}

}

void main()

{

SeqList R;

int n=10,i;

KeyType k=5;

int a[]={3,6,2,10,1,8,5,7,4,9};

for (i=0;i

R[i].key=a[i];

printf("关键字序列:");

for (i=0;i

printf("%d ",R[i].key);

printf("\n");

printf("查找%d所比较的关键字:\n\t",k);

if ((i=SeqSearch(R,n,k))!=-1)

printf("\n元素%d的位置是%d\n",k,i);

else

printf("\n元素%d不在表中\n",k);

printf("\n");

}

相关文档
最新文档