• [^] # Re: Le problème vient de l'indice de départ de la recherche

    Posté par . En réponse au message tableau en c. Évalué à 3.

    cela voudrais dire que à la fin de la boucle le compteur i garde la valeur de l'indice de la dernière case du tableau je croix que c'est ça n'es pas?

    Non, la valeur de j n'étant pas initialisée, sa valeur est indéterminée.
    (ça va dépendre de votre OS, du compilo, des optimisations, du format d'exécution, du sens du vent.)

    Et, par extension, celle de indmin, aussi. Si le premier élément du tableau est le plus petit, votre programme ne rentrera jamais dans la branche (le if).
    Du coup, si la valeur min est bien la bonne, celle du premier élément, celle de l'indice gardera sa valeur indéterminée.

    Si la valeur min par défaut est le premier élément, son indice doit pointer aussi vers le premier élément.

    indmin=0;
    min=tab[indmin];
    for(j=1 ; j<5 ; ++j){
    /* ... */
    }