Wie kann ich diesen funktionierenden Code für die binäre Suche in C vereinfachen?

Hey Leute haben vor ein paar Wochen mit dem Programmieren in C angefangen, als sie etwas über Algothiritmen lernten. Sie haben sich nur gefragt, wie Sie meinen Code einfacher machen könnten, es ist nur eine binäre Suchfunktion. Aber das einzige, was Sie tun müssen, ist, dass Sie die Argumente im Voraus beibehalten.

bool search(int value, int values[], int n)
{
    int min = values[0];
    int max = values[n-1];
    int average = (min + max) / 2;

    if(average == value)
    {
        return true;
    }

    while (average > value) 
    {
        max = average - 1;
        average = (min + max) / 2;

    }

    while (average < value)
    {
        min = average + 1;
        average = (min + max) / 2;
    }

    if (max < min) 
    {
        return false;
    }
    if (average == value) {
         printf("%i\n", average);
        return true;
    }
    else
    {
        return false;
    }
}

Antworten auf die Frage(4)

Ihre Antwort auf die Frage