logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

C: Usuwanie zadanej litery z wyrazu - co jest nie tak w kodzie?

hjkl3 30 Kwi 2006 16:38 1005 3
REKLAMA
  • #1 2577307
    hjkl3
    Poziom 16  
    Posty: 267
    Pomógł: 1
    Ocena: 5
    muszę napisać program w jezyku C (nie C++) który pobiera od użytkownika wyraz, pobiera od uzytkownika literkę i kasuje wszystkie te literki w wyrazie a następnie wyświetla powstały wyraz - mam napisany cały program tylko, że nie kasuje on liter - dlaczego, co w nim jest źle:

    #include <stdio.h>
    #include <conio.h>
    #include <string.h>

    int main()
    {
    int i;
    char litera;
    char wyraz[256];
    printf ("Podaj wyraz: \n");
    scanf("%s", &wyraz);
    printf ("Podaj litere: \n");
    scanf ("%c\n", &litera);
    printf("po wykasowaniu tych liter wyraz wyglada tak: \n");
    for (i=0; i<strlen(wyraz); i++)
    { if(wyraz[i] != litera) printf ("%c", wyraz[i] );
    };


    getch();
    return 0;
    }
  • REKLAMA
  • Pomocny post
    #2 2577349
    GoAway
    Poziom 13  
    Posty: 80
    Pomógł: 10
    Ocena: 2
    w tej linii przestaw \n przed %c
    scanf ("%c\n", &litera);

    czyli:
    scanf ("\n%c", &litera);
  • REKLAMA
  • #3 2577394
    hjkl3
    Poziom 16  
    Posty: 267
    Pomógł: 1
    Ocena: 5
    kurczeeeee działa !!!!!!!! wystarczyło przestawić "\n" - dlaczego ? jakie dziwne.........
  • #4 2581776
    GoAway
    Poziom 13  
    Posty: 80
    Pomógł: 10
    Ocena: 2
    nie ma za co
    napisz sobie samo scanf("%c",&litera) a zobaczysz jak program bedzie działac ;]
REKLAMA