为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 折半查找顺序查找

折半查找顺序查找

2018-03-14 5页 doc 17KB 33阅读

用户头像

is_591137

暂无简介

举报
折半查找顺序查找折半查找顺序查找 《 计算机科学与技术 》专业 实 验 报 告 书 第 7 次实验 塔里木大学信息工程学院 《 数据结构 》课程 第 7次实验报告 学号 实验室号 班别 组号 计算机号 年 月 日 日期 姓名 成绩评定 实验老师签名 朱赖红 静态查找表 名称 所用 硬件:实验室PC机一台; 设备 操作系统: Microsoft Windows XP Professional; 及 实现平台: Microsoft Visual C++ 6.0。 软件 实 通过本次实验,要求同学们熟悉Microsoft Vi...
折半查找顺序查找
折半查找顺序查找 《 计算机科学与技术 》专业 实 验 报 告 第 7 次实验 塔里木大学信息工程学院 《 数据结构 》课程 第 7次实验 学号 实验室号 班别 组号 计算机号 年 月 日 日期 姓名 成绩评定 实验老师签名 朱赖红 静态查找 名称 所用 硬件:实验室PC机一台; 设备 操作系统: Microsoft Windows XP Professional; 及 实现平台: Microsoft Visual C++ 6.0。 软件 实 通过本次实验,要求同学们熟悉Microsoft Visual C++ 6.0开发环境;理解查找的验 概念;掌握顺序查找和二分查找。 目 的 或 要 求 实 验 过 (1)顺序查找 程 (2)二分查找 及 步 骤 折半查找 #include #define N 21 void main(void) { int a[N]; int i,n,num; int top,bottom,mid; int flag=1; //如果在表列中找到数字,则值为1,否则为0 int loc=-1;//要查找的数在表列中的位置,如果loca=-1表示表列中没有这个数;如果有实 这个数,则它的值为所在的位置 printf("你想在多少个数中进行折半查找,请输入(1--20):"); scanf("%d",&n); 验 while(n<1 || n>20) { printf("你输入的数不正确,请重新输入。\n"); 分 printf("你想在多少个数中进行折半查找,请输入(1--20):"); scanf("%d",&n); } 析 printf("请你输入一个整数 a[1]:"); scanf("%d",&a[1]); i=2; while(i<=n) //输入从小到大的表列 { printf("请你输入一个整数 a[%d]:",i); scanf("%d",&a[i]); if(a[i] > a[i-1]) i++; else printf("你输入的数不满足要求,请重新输入。\n"); } //输出表列 printf("\n输出表列\n"); for(i=1; i<=n; i++) { printf("%6d",a[i]); } printf("\n"); printf("请你输入要查找的数:"); scanf("%d",&num); flag=1; //假设输入的数在表列中 top=n; bottom=1; mid=(top+bottom)/2; while(flag) { printf("top=%d, bottom=%d, mid=%d, a[%d]=%d\n",top,bottom,mid,mid,a[mid]); if( (num>a[top]) || (numa[top] 或者 numnum) //若 a[mid]>num,则num 一定在 a[bottom]和a[mid-1]范围之内 { top=mid-1; mid=(top+bottom)/2; } else if(a[mid] void main() { int a[10]={1,2,3,4,5,6,7,8,9,10}; int i,x,y; printf("输入你要找的数"); scanf("%d",&x); y=0; for(i = 0; i < 10; i ++) { if(x == a[i]) { y=1; printf("你要查找的数%d在第%d位置\n",x,i+1); break; } } if(y==0) printf("无法找到你要找的数\n"); }
/
本文档为【折半查找顺序查找】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索