各位大大午安:
真的是好冷喔~
事情是這樣的C/C++的CODE跑不出來+看不出問題
是否可以請各位大神給個方向:
程式碼:
#include <stdio.h>
#include <stdlib.h>
#define MAX_LEN
int binary(int*data,int low,int high,int target){
	int middle;
	if(low > high)
		return -1;
	else{
		middle = (low+high) /2;
		if(target == data[middle])
		return middle;
	else if (target<data[middle])
	    return binary(data,low,middle-1,target);
		else
		 return binary(data,middle+1,high,target);
	}
	
}
int main(){
	int data[MAX_LEN]=
	{1,8,9,15,25,33,42,66,74,81,90};
int i,index,target,c;
printf("原始陣列:");
for (i = 0 ; i<MAX_LEN ; i++ )
printf("[%d]",data[i]);
printf("\n");
target=0;
while (target !=-1){
	printf("請輸入搜尋值(-1結束)==>");
	scanf("%d",&target);
	index=binary(data,0,MAX_LEN-1,target);
	if(index !=-1)
	printf("搜尋到鍵值:%d(%d)\n",target,index);
	else
	printf("沒有搜尋到鍵值:%d\n",target);
	
}
	
	return 0;
}
編輯器顯示的錯誤如下,可以想不出來怎麼改:

先跟各位大神說謝謝了
int data[MAX_LEN]
改成
int data[]
for (i = 0 ; i<MAX_LEN ; i++ )
改成
for (i = 0 ; i<sizeof(data)/sizeof(int) ; i++ )