二分查找(指针法).c

来自「C语言入门级小程序,呵呵,对初学都非常有帮助,当年是我一句一句写下来的.呵呵~~」· C语言 代码 · 共 34 行

C
34
字号
#include<stdio.h>
#define N 10
void main()
{	
	int n,*p,num,k=1;
	int a[10]={1,2,3,4,5,6,7,8,9,10};
	n=N/2;
	printf("请输入要查找的数:");
	scanf("%d",&num);
	for(p=a+n;k;)
		{
			if(n==0)k--;
			if(*p==num)
				{
					printf("\n找到了!\n");
					goto end;
				}
			else if(num>*p)
				{
					n/=2;
					p=p+n+1;
					if(p>a+N-1)p=a+N-1;
				}
			else
				{
					n/=2;
					p=p-n-1;
					if(p<a)p=a;
				}
		}
	printf("\n没找到!\n");
end:;
}

⌨️ 快捷键说明

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