Ti ringrazio per la dettagliata risposta, MrX87! Ora provvedo a risponderti:
Ho preferito evitare di copiare anche il main perché, teoricamente, su di esso non dovrei aver commesso errori, anche se è leggermente diverso dalla tua versione. Il mio vero problema è che non capisco il ragionamento della ricerca...Originariamente inviato da MrX87
c'è qualche altro errore, perchè hai dimenticato totalmente di definire le variabili che usi, e poi il campo "primo" non esite in nessuna struttura!
poi devi gestire anche il vettore, nel senso renderlo statico, quindi fai una #define e il vettore lo dichiari statico, sempre del tipo struct Cella, oppure fai un puntatore alla struct Cella e poi fai inserire da tastiera la dimensione e lo allochi con la malloc...![]()
Questo è il mio attuale programma al completo:
Così composto pensi che possa andare bene?codice:#include <stdio.h> #include <stdlib.h> #define MAX 4 struct Cella { int valore; struct Cella *next; }; struct Coda { struct Cella *primo; struct Cella *ultimo; }; typedef struct Cella nodo; int CercaOccorrenze(nodo *cursore, int num); int main() { int n, i, occ; nodo *testa[MAX]; printf("Inserire il numero del quale si stanno ricercando le occorrenze: "); scanf("%d", &n); for(i=0; i<MAX; i++) { occ = CercaOccorrenze(testa[MAX], n); } printf("Il numero %d possiede %d occorrenze.", n, occ); system("pause"); return 0; } int CercaOccorrenze(nodo *cursore, int num) { nodo *temp = NULL; int trovato = 0; while(cursore =! NULL) { if(cursore->valore == num) { trovato++; } temp = cursore; cursore = cursore->next; temp->next = NULL; } return trovato; }![]()
Altro quesito al quale non riesco a rispondermi:
Mi sono posto la medesima domanda durante la stesura del codice ma non ho trovato alcuna risposta. Ricordo, però, che negli esempi di codice che mi davano alle superiori, questa struttura era onnipresente ma non ne comprendo l'utilizzo, dato che nelle code il procedimento di lettura è il medesimo delle liste! Penso che possa tornare utile solo in caso si debba inserire un elemento, giusto? :master:Originariamente inviato da MrX87
Innanzi tutto non ho capito a cosa serve quella struttura dati che hai fatto tu nel post precedente:
perchè da come la vedo io, serve solo la struttura dati della lista ( coda )codice:struct Coda { struct Cella *inizio; struct Cella *fine; };

Rispondi quotando