Bonsoir
je suis débutant en C et j'ai un problème avec un programme
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
 
int first(int arr[], int low, int high)
{
  if(high >= low)
  {
 
    int mid = low + (high - low)/2;
 
 
    if ( ( mid == 0 || arr[mid-1] == 0) && arr[mid] == 1)
      return mid;
 
    // if the element is 0, recur for right side
    else if (arr[mid] == 0)
    return first(arr, (mid + 1), high);
 
    else // If element is not first 1, recur for left side
      return first(arr, low, (mid -1));
  }
  return -1;
}
int main()
{ int R=3,C=3;
    int mat[R][C] = { {0, 0, 0, 1},
        {0, 1, 1, 1},
        {1, 1, 1, 1},
        {0, 0, 0, 0}
    };
    int i,k=0,index;
    int tab[5];
    for (i = 0; i < R; i++)
    {
     index = first (mat[i],0, C-1);
     tab[k]=index;
       k++;
      //printf("Index of row is %d \n", index);
 
    }
quand je compile :
attention : passing argument 1 of 'first' from incompatible pointer type [enabled by default]|
note: expected 'int *' but argument is of type 'float *'|
attention : variable 'tab' set but not used [-Wunused-but-set-variable]|
||=== Build finished: 2 errors, 0 warnings (0 minutes, 0 seconds) ===|