C语言程序—顺序查找和折半查找_第1页
C语言程序—顺序查找和折半查找_第2页
C语言程序—顺序查找和折半查找_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

#include #define MAXLEN 50typedef struct int key;char data;datatype;int getsort(datatype x );int seqsearch(datatype x,int key,int n);int binsearch(datatype x,int key,int n );void insertsort(datatype x,int n);void print(datatype x,int n);void main() int sel,n,s,key,i; /*sel 输入选择,n 记录长度,s 查找方法的选择,key 查找关键字给定值,i 目标记录的下标*/datatype xMAXLEN;printf(请输入你的选择:1-开始 其他选择为退出 nyour choice =);scanf(%d,&sel);while(sel=1) printf(n输入关键字序列,以1结束输入:);n=getsort(x );printf(请输入选择的查找方法:1-顺序查找 2-折半查找 3-退出查找nyour choice =);scanf(%d,&s);while(s!=3) printf(请输入查找关键字给定值key);scanf(%d,&key);if(s=1) printf(n原关键字序列为:);print(x,n);i=seqsearch(x,key,n);if(i=-1)printf(n没有给定值记录!n);elseprintf(n查找的结果为表中的第 %d 条记录!n,i+1); else if(s=2) i= binsearch(x,key,n );if(i=-1)printf(n没有给定值记录!n);elseprintf(n查找的结果为表中的第 %d 条记录!n,i+1); elseprintf(选择错误!n);printf(请输入选择的查找方法:1-顺序查找 2-折半查找 3-退出查找nyour choice =);scanf(%d,&s); printf(请输入你的选择:1-开始 其他选择为退出 nyour choice =);scanf(%d,&sel); /*输入记录的关键字*/int getsort(datatype x ) int i=0;scanf(%d,&xi.key);while(xi.key!=-1) i+;scanf(%d,&xi.key); return i; /*顺序查找*/int seqsearch(datatype x,int key,int n) int i;for(i=0;in;i+) if(key=xi.key)return i; return -1; /*折半查找*/int binsearch(datatype x,int key, int n) int low,mid,hig; /*定义位置指示器*/datatype yMAXLEN;low=0;hig=n-1;for(int i=0;in;i+)yi=xi;insertsort(y,n); /*排序*/printf(n排序后关键字序列为:);print(y,n);while(lowymid.key)low=mid+1;elsehig=mid-1; return -1; /*直接插入排序*/void insertsort(datatype x,int n) int i,j;datatype temp; /*中间变量*/for(i=1;i-1 & temp.keyxj.key) xj+1=xj;j-; xj+1=temp; /*显

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论