Bonjour je dois faire une recherche dichotomique...

Donc j'ai fais un petit programme mais il ne fonctionne pas j'ai une violation d'accès je suis débutant, si vous pouviez m'expliquer ? de quoi il s'agit j'ai essayé de passer par les pointeurs rien à faire...

Vous avez une idée ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <stdio.h>
#include <stdlib.h>
int i;
 
int recherche(int tableau[99],int index,int minimum,int maximum){
 int milieu;   
  milieu = ( maximum - minimum ) / 2;
    if (minimum==maximum)
                          if (index==tableau[milieu])
                          return index; 
                          else return 0;
 
 
                          else
                          {
                               if (tableau[milieu]<=index){
 
                                                           return recherche(tableau,index,minimum+1,milieu);
 
 
                                                           }
                                                           else
                                                           {
 
                                                           return recherche(tableau,index,milieu,maximum);   
 
                                                           }; 
 
 
                          };
 
 
}
 
 
int main(){
    int tableau[99];
    tableau[0] = 1;
    printf("%d",tableau[0]);
 
    for(i=1;i<=99;i++){
                       tableau[i] = tableau[i-1] + i ;
                      printf(" - %d",tableau[i]); }
    scanf("%d",i);
    printf("%d",recherche(tableau,10,0,99));                  
    scanf("%d",i);
 
}
merci