• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wyszukanie osób po nazwisku - C

Fiszki IT
Fiszki IT
0 głosów
133 wizyt
pytanie zadane 12 listopada 2018 w C i C++ przez gorgonek Obywatel (1,790 p.)

Hejka. Chciałabym się Was spytać, co jest nie tak w tym kodzie, żeby spełniał on funkcję wyszukiwarki osób po nazwisku? Byłabym bardzo wdzięczna za pomoc!
 

int WyszukajOsobe(TDane x)
{
    int n;
    printf("Podaj nazwisko: ");
    scanf("%d", &n);
    if(x.nazwisko)
    {
        WyswietlStudenta(x);
        return 0;
    }
    else
    {
        printf("Nie ma takiej osoby!");
        return 0;
    }
}

int main()
{
    FILE *pliczek;
    TDane x;
    TWsk P;
    P=NULL;
    WprowadzDane(&P);
    printf("\nWprowadzono nastepujace dane: \n");
    printf("Srednia: %.2f\n", ZwrocSrednia(P));
    printf("Najwiekszy element: %d\n", NajwiekszyElement(P));
    UsunStos(&P);
    pliczek = fopen(PLIK, "w");
    fprintf(pliczek, "%s %s %d %f", x.imie, x.nazwisko, x.rok_ur, x.srednia);
    WyszukajOsobe(&x);
    fclose(pliczek);
    return 0;
}

PS. błąd jest taki, że w momencie wyszukiwania danej osoby i wprowadzeniu jej nazwiska, zwraca same zera.

1 odpowiedź

0 głosów
odpowiedź 12 listopada 2018 przez koening Nowicjusz (140 p.)

Hej, widzę ze stosami się bawisz ;)

Zły argument funkcji podajesz, powinnas tak wywołać funkcję.

 WyszukajOsobe(P); 

W ten sposób przekazujesz wskaźnik do funkcji i w opraciu o niego przeszukujesz cały stos.

int WyszukajOsobe(TWsk P)
{
....

while(P!=NULL)
{
if(P->d.imie == "Jan"){
....znaleziono osobe o imieniu JAN....
}
 P=P->next;
}

}
komentarz 12 listopada 2018 przez gorgonek Obywatel (1,790 p.)
Bardzo dziękuję za wyjaśnienie ;) Już się biorę do pracy Mój Kolego i zobaczę, czy tradycyjnie nie narobię byków z tymi stosami :P Czasami jak się patrzy długo na kod... to potrzeba świeżości innej osoby, bo po prostu można kręćka dostać ;)
komentarz 12 listopada 2018 przez gorgonek Obywatel (1,790 p.)
Hmm... a jeszcze tak sobie pomyślałam, bo tutaj ogólnie jest funkcja dla sztywno wpisanych osób, prawda? A czy dałoby się jakoś wyszukać na podstawie tego, co ktoś powiedzmy wpisze? :P Czyli tym printf/scanf? :P

Podobne pytania

0 głosów
1 odpowiedź 103 wizyt
pytanie zadane 2 lipca 2017 w JavaScript przez demotywatorking Obywatel (1,210 p.)
0 głosów
0 odpowiedzi 81 wizyt
pytanie zadane 8 grudnia 2018 w PHP przez thedaw Obywatel (1,810 p.)
0 głosów
0 odpowiedzi 110 wizyt
pytanie zadane 20 października 2017 w SQL, bazy danych przez djedi Nowicjusz (180 p.)
Porady nie od parady
Pytania na temat serwisu SPOJ należy zadawać z odpowiednią kategorią dotyczącą tej strony.SPOJ

84,721 zapytań

133,527 odpowiedzi

295,921 komentarzy

55,997 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...