Die Function minimum wird nicht mal gerufen.

joeengel

Grünschnabel
Code:
#include<stdio.h>

 int minimum(int pointeur[]){
   int i;
   int n;
      for( i=0;i<n;i++){
       if (pointeur[i]<pointeur[i+1]){
        printf("Das minimum ist %d\n",pointeur[i]);
       return pointeur[i];
      }else{
        printf("Das minimum ist %d\n:",pointeur[i+1]);
      return pointeur[i+1];
        }
      }
    }

  int main(void){
    int m;
   
printf("länge des Feldes: ");
  scanf("%d",&m);
  int pointeur[m];
 if(m>20){printf("die länge muss höchste 20 sein\n gültigue länge bitte\n");}
 else{
  int j;
      for(j=0;j<m;j++){
        printf("Feldselemente bitte:",j);
        scanf("%d",&pointeur[j]);
        }
          minimum(pointeur);

  }
return 0;
}

es kann sein,das Programm nicht funktioniert oder es andere Fehlern in dem Programm
gibt.aber ich verstehe nicht warum die Funktion Minimum nicht im Hauptprogramm gerufen wird.
danke voraus für Eure Antworten
 
Hi

Solange die eingegebene Länge <=20 ist und du danach genug Zahlen eingibst, wird minimum aufgerufen.
Ich seh da keinen Fehler.

Das Problem: minimum macht nichts.
Die for-Schleife geht solange durch, bis i von 0 beginnend bei n ankommt.
n hat zu diesem Zeitpunkt aber noch keinen Wert (zumindest nicht von dir bekommen).
Der Anfangswert, der drinsteht, ist ziemlich sicher eine wirre Zahl, die kleiner als Null ist.
Und weil i bei 0 beginnt und schon da größer als n ist, wird die Schleife gaar nicht ausgeführt.

Gruß

PS: Es heißt Pointer, nicht Pointeur :D
 
Zurück