tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
4
ZUGRIFFE
844
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    salula1986 salula1986 ist offline Rookie
    Registriert seit
    Feb 2008
    Ort
    Neunkirchen
    Beiträge
    5
    Hallo vielleicht kann mir jemand von euch helfen. Ich mache zu Zeit gerade ne Ausbildung als Fachinformatiker und habe immer wieder en paar Probleme mit C/C++.

    So ich sitze jetzt seit ner Stunde hier mit einem Programm das einen Selection Sort in einem Array mit 10 Elementen ausführen soll das ganz wollte ich mit Bloodshed DevC++, wenn ich das Programm aber kompiliere und starte macht er direkt nach der leschleife die die Werte ins Array schreibt zu.
    Ich versthe net wieso.

    Problem in Kurzform: -Bloddshed DevC++ 4.9.9.2
    -Programm mit Selection Sort
    -Nach erster Schleife Programm zu Ende

    Vielleicht kann einer von euch mir ja erklären an was das liegen könnte.
    HTML-Code:
    //Selection Sort 
    
    #include<iostream>
    #include<stdio.h>
    #include<stdlib.h>
    
    using namespace std;
    
    int main()
    {
        int wert[10];
        int k,i,j,m,t;
        cout<<"Dieses Programm sortiert 10 Zahlen in aufsteigender Reihenfolge mit Hilfe \nvon Selectionsort." <<endl;
        for(k=0;k<10;k++)
          {
          	cout<<"Bitte Wert eingeben";
          	cin>>wert[k];
          }
    ->->->->HIER MACHT ER JEDES MAL NICHT WEITER SONDERN DAS FENSTER ZU        ALS WÄRE ER AM PROGRAMMENDE ANGELANGT<-<-<-<-<-<-
    
        cout<<"Elemente werden sortiert..."<<endl;
        
        for(i=0;i<10-1;i++)
        {
            m=i;
            for(j=i+1;j<10;j++)
            {
                 if(wert[j]<wert[m])
                 {
                      m=j;
                 }
            }
            t=wert[m];
            wert[m]=wert[i];
            wert[i]=t;
        }
        for(int z=0;z<10;z++)
        {
            cout<<wert[z]<<endl;
        }
        getchar();
        return 0;
    }
    Geändert von salula1986 (28.02.08 um 13:40 Uhr) Grund: nachtrag programmversion
     

  2. #2
    Avatar von XeoX
    XeoX XeoX ist offline Mitglied Silber
    Registriert seit
    Aug 2007
    Beiträge
    86
    OK ganz einfach dein Eingabepuffer ist nicht leer, deshalb beendet er das Progrmm sofort!
    Mach am ende noch ein getchar(); oder nach jedem cin ein eingabepuffer Leerung!

    Gruß XeoX
     
    Wenn du jemandem auf die Brille trittst, erinnere ihn: Man sieht nur mit dem Herzen gut.
    (Antoine de Saint-Exupéry)

  3. #3
    salula1986 salula1986 ist offline Rookie
    Registriert seit
    Feb 2008
    Ort
    Neunkirchen
    Beiträge
    5
    Erstmal super dankeschön für die schnelle antwort

    Zitat Zitat von XeoX Beitrag anzeigen
    OK ganz einfach dein Eingabepuffer ist nicht leer, deshalb beendet er das Progrmm sofort!
    Mach am ende noch ein getchar(); oder nach jedem cin ein eingabepuffer Leerung!

    Gruß XeoX
    habs grade getestet funktioniert mit dem getchar() nach der schleife.

    kannst du mir villeicht trotzdem noch sagen wie mach nach einem cin den eingabepuffer leert.
    Geändert von salula1986 (28.02.08 um 13:45 Uhr)
     

  4. #4
    shader09 shader09 ist offline Mitglied Gold
    Registriert seit
    Sep 2007
    Beiträge
    163
    Bin ja auch grad in der Ausbildung zum Fachinformatiker. Und benutzen genau den selben Compiler. Eingabepuffer leeren mit
    Code :
    1
    
    fflush(stdin);
     

  5. #5
    salula1986 salula1986 ist offline Rookie
    Registriert seit
    Feb 2008
    Ort
    Neunkirchen
    Beiträge
    5
    super danke ihr seid echt schnell
     

Ähnliche Themen

  1. Antworten: 6
    Letzter Beitrag: 17.04.10, 15:35
  2. Antworten: 0
    Letzter Beitrag: 21.08.06, 12:04
  3. Antworten: 4
    Letzter Beitrag: 22.03.06, 20:50
  4. Anfängerfrage Registry (VC++ vs Bloodshed C++)
    Von MicroPilot im Forum C/C++
    Antworten: 11
    Letzter Beitrag: 12.09.04, 13:37
  5. Antworten: 6
    Letzter Beitrag: 13.06.02, 12:29