?
Dann gibt er mit -1009492 irg was aus weil er die Zahl nicht findet oder so.
Der findet schon die richtige Zahl, das was ausgegeben wird, steht da auch
drin. Uninitialisierte Variablen werden mit einem zufälligen Wert belegt,
wie du dich leicht überzeugen kannst, wenn du dein main-Programm änderst:
int main(int argc, char** argv)
{
int anzahl;
int f[10];
//anzahl = einlesen(f);
//printf("Anzahl %d \n",anzahl);
ausgabe(f,10);
return 0;
}
In Zeile 22: solltest du f [anz] = zahl schreiben weil möglicher weise
sonst nicht alle Zahlen angezeigt werden können.
Gib doch mal aus Spaß einen Buchstaben, anstatt eine Zahl ein. Die Eingabe
wird schneller beendet sein, als dir lieb ist. Aus diesem Grund sollte
der Rückgabewert von scanf geprüft und beim missglückten Einlesen der
Eingabepuffer geleert werden.
Gruß,
B.B.