入门客AI创业平台(我带你入门,你带我飞行)
博文笔记
  • 当前位置:
  • 入门客AI创业平台
  • >
  • 博文笔记
  • >
  • 有15个数按由大到小顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个元素的值。如果该数不在数组中,则输出“无此数”

有15个数按由大到小顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个元素的值。如果该数不在数组中,则输出“无此数”

创建时间:2018-01-29 投稿人: 浏览次数:126
#include <stdio.h>
#include <conio.h>
int main(){
  int a[7]={1,2,3,4,5,6,7};
  int i,num,n,low,high,mid;
  printf("数组为: ");
  for(i=0;i<7;i++)
    printf("%3d",a[i]);
  printf(" 请输入数组中的一个数:");
  scanf("%d",&num);
  n=7;
  low=0;
  high=n-1;
  while(low<=high){
    mid=(low+high)/2;
    if(num<a[mid])
      high=mid-1;
    else if(num>a[mid])
      low=mid+1;
    else if(num==a[mid]){
      printf("%d是数组中第%d个元素的值",num,mid+1);
      break;
    }
  }
  if(num!=a[mid])
    printf("无此数");
  getch();
  return 0;


声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
  • 上一篇:没有了
  • 下一篇:没有了
未上传头像