Zweitgrößte Zahl in C ausgeben?
Hab ein problem und weiß nicht wie ich das programmieren soll. Undzwar muss ich ein Programm schreiben in C-Sprache (nicht C#) das so geht: Das Programm liest positive Zahlen ein, bis man 0 eingibt (die eingabe wird dadurch unterbrochen), dann gibt das Programm die zweitgrößte Zahl aus die man eingegeben hat. Mir stehen if,else,if-else Anweisungen und for,do,dowhile Schleifen zur Verfügung. Ich habe keinen Plan wie ich das programmieren soll, wäre sehr dankbar wenn mir wer helfen könnte. Bibliotheken: #stdlib #stdio
1 Antwort
du gehst alle eingelesenen Zahlen in einer Schleife durch. Dann hast du 2 Variablen , einmal max = 0 und einmal max2. Dann gest du in der Schleife die Zahlen durch und wenn die Zahl grösser als max ist dann wird max2 = max und die neue Zahl speicherst du in max. Wenn die Schleife durch ist sollte in max2 die 2. grösste Zahl stehen.
Ich kann leider kein C aber ich hab es mal versucht. Du musst wahrscheinlich an der Syntax noch einiges ändern
http://hastebin.com/ugazataqic.mel
Vielen Dank für deine Antwort :)
Ich weiß aber überhaupt nicht wie ich die Schleife anlegen soll, dass die bei 0 aufhört, positive Zahlen zu speichern, welche Schleife soll ich da am besten nehmen?
Es wäre unglaublich nett , wenn du mir diesen Text auf den ich antworte schnell in einen Quellcode schreibst, denn ich steh hier leider komplett auf der Leitung und ich komm einfach nicht drauf wie ich das programmieren soll.
LG