text1.cpp

来自「数据结构的实验,是查找那一章节的,用二分法查找!」· C++ 代码 · 共 53 行

CPP
53
字号
#include<stdio.h>
#include<conio.h>
#define N 9
void main()
{
int i,number,top,bott,mid,loca,sign,a[N];
int flag=1;
char c;

printf("输入1个数字:\n");
scanf("%d",&a[0]);
i=1;
while(i<N)
{
   printf("下一个数字:\n");
   scanf("%d",&a[i]);
   if(a[i]<a[i-1])
    printf("Error! Try again!\n\a");
   else
    i++;
}
printf("\n");

for(i=0;i<N;i++)
   printf("%d ",a[i]);
while(flag)
{
   printf("输入要找的数字\n");
   scanf("%d",&number);
   sign=-1;
   top=0;
   bott=N-1;
   while((sign==-1)&&(top<=bott))
   {
    mid=(bott+top)/2;
    if(number==a[mid])
    {
     loca=mid;
     printf("%d是第%d个数\n\n",number,loca+1);
     sign=1;   
    }
    else if(number<a[mid])
      bott=mid-1;
      else
      top=mid+1;
   }
   if(sign==-1)printf("找不到\n\n");
   printf("按N退出本程序,按其他键继续\n");
   c=getch();
   if((c=='N')||(c=='n'))flag=0;
}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?