关于指针问题
题目:请用折半查找法实现在已升排列的字符串数组中查找第一个内容相同的字符串。函数原型如下:const char*search(const char *key, const char **array,size_t num)
返回值:找到返回找到的字符串指针,否则返回NULL
我自己写的如下:#include<string.h>
const char*search(const char *key, const char **array,size_t num)
{const char **top ,**bow,**mid;
int sign,flag=1,loca,c;
char e;
while(flag);
{
loca=0;
sign=1;
top=array;
bow=(array+num);
if((*key<**array)||(*key>**(array+num)))
loca=-1;
while((sign==1)&&(top<=bow))
{mid=(bow+top)/2;
if(*key==**mid)
{
printf("FIND %s", **mid);
sign=0;}
c=(strcmp(*key,**mid));
if(c>0)
top=mid+1;
else
bow=mid-1;
}
if((sign==1)||(loca==-1))
printf("not found");
printf("continu or not (y/n)?,\n");
scanf("%c",&e);
if(e=='N'||e='n')
flag=0;}}
有问题啊 。。
请师兄给我看看问题啊