• [^] # Re: Peut-etre comme ca

    Posté par . En réponse au message index dernière occurrence. Évalué à 1. Dernière modification le 21 février 2020 à 16:21.

    #include <stdio.h>
    #include <stdlib.h>
    unsigned int index_last_occurrence(char tableau[], char lettre) {
    int size=6;
    unsigned int index=0, i;
    for(i=0;i<=size-1;i=i+1) {
    if (tableau[i]== lettre) {
    index=i+1;
    return index;
     }
    }
    return NONE;
    }
    int main(void) {
    char tableau[]={'a','n','a','n','a','s','0円'},lettre;
    int size=6;
    unsigned int position;
    printf("donner la lettre: ");
    scanf("%c",&lettre);
    position = index_last_occurrence(tableau, lettre);
    if(position > 0) {
     printf("Position: %i", position);
    } else {
     printf("Pas glop");
    }
    return EXIT_SUCCESS;
    }

    Bon c'est moche mais ca marche.
    Donc comme dit plus bas, tu de declare par i dans le for, le return dans le if, et tu incremente de 1 parceque ca compte à partir de zero.

    Ensuite quand tu appelle ta fonction index_last_occurrence(), il te faut aussi récuperer la valeur de retour!

    Et comme dit plus bas, strlen() et plus judicieux(faut inclure string.h)