int f(int a[], int size) {
if (size == 1)
return arr[0];
size--;
return f((arr + (arr[0] > a[size])), size);
}
Ich versuche, den Index des Minimums zurückzugeben. Der obige Code gibt den Wert des Minimums zurück, aber ich habe Probleme, den Index zurückzugeben. Kann mir jemand helfen? Außerdem darf ich nur 2 Parameter an die Funktion, das Array und die Größe des Arrays übergeben.Return min Index rekursiv
Welche Sprache ist das? C? C++? – Paul
Wenn die Funktion in C oder C++ (oder einer anderen Sprache basierend auf C oder C++) ist, können Sie nicht wirklich mehrere Werte zurückgeben. Sie können es als * output * -Parameter "zurückgeben" oder indem Sie ein * pair * oder * tuple * oder * structure * oder sogar ein * array * (in einigen Sprachen) als Rückgabewert verwenden. Wie es genau funktioniert, hängt von Ihrer Sprache ab, von der wir nichts wissen. –
Oder warten Sie, möchten Sie die Funktion zu ändern * nur * den Index zurückgeben, und nicht den Wert? –