Witamy na forum PC Format Zapraszamy do REJESTRACJI


Użytkownicy przeglądający ten wątek: 1 gości

problem z while(p!=NULL)

#1
problem z while(p!=NULL)
Witam!
Mam za zadanie zrobić do szkoł program który operuje na liście jednokierunkowej. Zrobiłem na razie coś takiego (kod), ale program się wywala przy wyświetlaniu listy. Gdy ustawiłem wyświetlanie w pętli for na i=ilosc wpisow, to jest dobrze więc pętla while nie kończy się przy ustawionym warunku. Co źle zrobiłem w tym programie, czy może mi ktoś pomóc, bo siedzę już nad tym kilka ładnych godzin i nie mam już pomysłów...


#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
struct lista
{
string imie;
string nazwisko;
int wiek;
lista *nastepny;
} *glowa;

string imie_, nazwisko_;
int wiek_;

for(int i=1; i<4; i++)
{

cout << "\nWPIS: " << i << endl;
cout << "Podaj Imie: ";
cin >> imie_;
cout << "Podaj Nazwisko: ";
cin >> nazwisko_;
cout << "Podaj wiek: ";
cin >> wiek_;

if(i==0)
{
lista *glowa=NULL;
lista *p = new lista;
cout << " p-> " << p <<endl;
p->imie=imie_;
p->nazwisko=nazwisko_;
p->wiek=wiek_;
p->nastepny=NULL;
glowa=p;
}
else
{
lista *p = new lista;
cout << " p-> " << p <<endl;
p->imie=imie_;
p->nazwisko=nazwisko_;
p->wiek=wiek_;
p->nastepny=glowa;
glowa=p;
}

}
cout << "\n-----------------------\n";
lista *p=glowa;

do
{
cout << "\np -> " << p;
cout << "\np -> n " << p->nastepny;
cout << "\nIMIE: " << p->imie;
cout << "\nNAZWISKO: " << p->nazwisko;
cout << "\nWIEK: " << p->wiek << endl << endl;
p=p->nastepny;
} while(p != NULL);

system("PAUSE");
return EXIT_SUCCESS;
}
 System operacyjny: windows_xp_2003 Przeglądarka: ie
#2
RE: problem z while(p!=NULL)
TO:
Kod:
for(int i=1; i<4; i++)
    {
    
    cout << "\nWPIS: " << i << endl;
    cout << "Podaj Imie: ";
    cin >> imie_;
    cout << "Podaj Nazwisko: ";
    cin >> nazwisko_;
    cout << "Podaj wiek: ";
    cin >> wiek_;
    
    if(i==0)
    {
        lista *glowa=NULL;
        lista *p = new lista;
        cout << " p-> " << p <<endl;
        p->imie=imie_;
        p->nazwisko=nazwisko_;
        p->wiek=wiek_;
        p->nastepny=NULL;
        glowa=p;
    }
    else
    {
        lista *p = new lista;  
        cout << " p-> " << p <<endl;      
        p->imie=imie_;
        p->nazwisko=nazwisko_;
        p->wiek=wiek_;
        p->nastepny=glowa;
        glowa=p;
    }

ZMIEŃ NA:

Kod:
for(int i=1; i<4; i++)
  {

    cout << "\nWPIS: " << i << endl;
    cout << "Podaj Imie: ";
    cin >> imie_;
    cout << "Podaj Nazwisko: ";
    cin >> nazwisko_;
    cout << "Podaj wiek: ";
    cin >> wiek_;

    lista *p = new lista;
    cout << " p-> " << p <<endl;
    p->imie=imie_;
    p->nazwisko=nazwisko_;
    p->wiek=wiek_;
    if(i==1) p->nastepny=NULL; else p->nastepny=glowa;
    glowa=p;
  }

EDIT:
No i oczywiście nie zapomnij pousuwać tych dynamicznych listOczko pozdro
 System operacyjny: windows_xp_2003 Przeglądarka: firefox
#3
RE: problem z while(p!=NULL)
Wielkie dzięki !
 System operacyjny: windows_xp_2003 Przeglądarka: ie
Programy: Polecane / Nowe / Inne




Podobne wątki (problem z while(p!=NULL))
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Inkrementacja a pętla while Cixi 2 5604 22.12.2016, 21:47
Ostatni post: Cixi
  Pętla while [C++] Problem polak3018 4 2715 29.12.2013, 12:53
Ostatni post: polak3018
  [c++] - nie działa srand(time(NULL)); jajo1233 2 7636 18.05.2013, 20:58
Ostatni post: jajo1233

Skocz do:


Wybrane wątki (problem z while(p!=NULL))
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
Scared Ipad Pro programowanie? NissmoOne 4 4060 06.10.2018 12:22
Ostatni post: NissmoOne
  C# pierwsza pusta komórka Excel DonCorleone 0 3891 21.09.2018 16:58
Ostatni post: DonCorleone
  .bat nie kompresuje plików GIENTY 3 4349 06.09.2018 07:20
Ostatni post: broda99
  problem z programem .bat wiktrom12 4 5229 30.08.2018 08:25
Ostatni post: wiktrom12
  Silnik do gier ZigglerGames 1 4486 23.08.2018 09:03
Ostatni post: Szachista
  Chciałbym zrobić prosty plik exe z jedną funkcją densour 4 5164 09.08.2018 16:24
Ostatni post: Ajgor
  Który język wybrać do stworzenia aplikacji synchronizujące pliki z urządzeniem mobiln Elemental 2 1906 18.07.2018 12:05
Ostatni post: Ajgor
  Pomysł napisania programu ROM FireBytes 3 5867 28.06.2018 16:56
Ostatni post: FireBytes
  [VBA] Tworzenie nowego arkusza z danymi z TextBox'a Pioro 4 6180 19.06.2018 23:24
Ostatni post: broda99
  Potwierdzenie na maila po wysłaniu pliku coci 0 5540 13.06.2018 20:37
Ostatni post: coci
  Pieczętowanie Archiwum Jar - Po co? wanhelsing 3 6178 19.05.2018 20:55
Ostatni post: koneton
  Wyszukiwarka w spawnerze nie reaguje na polskie znaki kazik666 0 5942 16.05.2018 12:04
Ostatni post: kazik666
  BASH symulator silnika dawswi1 3 6377 13.05.2018 10:43
Ostatni post: Szachista
  Autohotkey automatyczny zapis TheProgson 0 5997 07.05.2018 21:27
Ostatni post: TheProgson
  VBA Pobieranie wybranych plików z danymi julietta03 1 6127 04.05.2018 08:25
Ostatni post: broda99