Ciao a tutti...
vi rompo per due volte in poco tempo...
stavo cercando di fare un programma che registri una sequenza di numeri chiusa da 0 e poi li stampi...
questo è quello che mi è uscito fuori:
#include <iostream>
using namespace std;
int main()
{
typedef struct nodo
{
int info;
struct nodo *succ;
}lista;
lista *p, *q, *u=NULL; //p=penultimo - q=ultimo - u=primo
int info;
/* INSERIMENTO DATI */
cout<<"Inserire il dato: ";
cin>>info;
while (info!=0)
{
q=new lista;
if (q!=NULL)
{
if (u==NULL)
u=p;
else
p->succ=q;
q->info=info;
p=q;
cout<<"Inserire il dato: ";
cin>>info;
}
}
q->succ=NULL;
/* STAMPA DATI */
cout<<"La sequenza inserita è:";
q=u;
while (q->succ!=NULL)
{
cout<<endl<<q->info;
if (q->succ!=NULL)
q=q->succ;
}
system("PAUSE");
return 0;
}
il problema è che dopo aver inserito questi X numeri, mi stampa:
La sequenza inserita è:
[valore sporco]
e poi l'esecuzione si interrompe con la classica finestra "lista.exe ha smesso di funzionare"...
qualcuno può aiutarmi?