当前位置: 代码迷 >> C语言 >> 有关于数组的问题
  详细解决方案

有关于数组的问题

热度:36   发布时间:2007-12-16 13:47:26.0
有关于数组的问题
有15个数按由大到小顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中的第几个元素的值。如果该数不在数组中,则输出“无此数”。请大家务必帮帮忙啊!
----------------解决方案--------------------------------------------------------
查数
/*二分法查数*/
#include<stdio.h>
int main(void)
{
     int a[15]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
     int i=0,j=0;
     int b;
     /*clrscr();*/
     scanf("%d",&b);
      if(b<=15)
       {
      if((b%2)!=0)
      {
        for(i=0;i<15;i=i+2)
          if(b==a[i])
        break;
           printf("%d",i); }
     else if((b%2)==0)
      {  for(i=1;i<15;i=i+2)
          if(b==a[i])
        break;
          printf("%d",i);}
     }
     else
        printf("没有这个数:\n");

    return 0;
}
----------------解决方案--------------------------------------------------------
  相关解决方案