kostenloser Webspace werbefrei: lima-city


Fehlersuche, scanf?

lima-cityForumProgrammiersprachenC/C++ und D

  1. Autor dieses Themas

    kiruku

    kiruku hat kostenlosen Webspace.

    Das Programm funktioniert, alles geht, allerdings stimmt am ende irgendwas nicht in ner do while schleife. mein scanf will einfach nicht. Hab mal die main gelöscht, und die funktionen darin dies aufruft.. nun ist es so wenn die do schleife das 2. mal durchläuft fragt der scanf nicht mehr ab...is beides dasselbe prob, die printf geht aber scanf nicht

    #include <stdio.h>
    int arrayX[3][3];
    
    
    int main(void){
    char rp;
    int i,j,replay=1;
    
    
    
    do {
    
    printf("Nochmal? Y/N: ");
    scanf("%c",&rp);
    
    if ((rp=='Y') || (rp == 'y')) {
    replay = 1;
    }else {
    replay = 0;
    }
    if (replay == 1) {
    for(i=0;i<3;i++) {
    for(j=0;j<3;j++) {
    arrayX[i][j] = 0;
    }
    }
    
    }
    
    }while (replay==1);
    
    
    return 0;
    }



  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. x*****k

    Hi!

    Ich halte ja nichts von Do-While-Schleifen, deshalb hab' ichs dir jetzt mal in ner For-Schleife geschrieben:
    #include <stdio.h>
    
    int main(){
    char rp;
    int i,j,replay, k;
    int arrayX[3][3];
    
    
    
    for (i = 0; i < replay; i++)
    {
        printf("Nochmal? Y/N: ");
        scanf("%c",&rp);
        fflush(stdin);
        printf("\n");
        
                  if ((rp=='Y') || (rp == 'y')) 
                  {
                  replay++;
                      for(j=0;j<3;j++) {
                      for(k=0;k<3;k++) {
                      arrayX[j][k] = 0;
                      }}
                  }
                  else {
                       break;
                       }
    
    }
    
    
    return 0;
    }


    Die Variablennamen beim Array hab ich geändert, aber sollte für dich ja kein Problem darstellen!
    Wichtig ist einfach, dass du mit fflush(stdin); den Standard-Eingabepuffer entleerst!
    mfg x-bLacK :cool:
  4. Autor dieses Themas

    kiruku

    kiruku hat kostenlosen Webspace.

    danke. jetzt nochmal ne frage, was verstehst du unter standartpuffer leeren? und wann wendet man es an? weil ein anderer code von mir geht nicht obwohl es das erste mal ist das es in &rp reinschreibt aber vorher gibts schon einige scanf's...

    btw. das array is global weils in 5 funktionen gebraucht wird und ich hab keinen bock das zu übergeben da mir arrays and funktionen zu übergeben viel zu kompliziert is also deklarier ich sie halt public xD



    edit:

    hat sich erledigt..



    Beitrag geändert: 20.11.2008 19:06:19 von kiruku
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!