Io gestirei un array di puntatori nel seguente modo. Ma non sono sicuro se vada bene per quel esercizio
.
Codice PHP:
#include <stdio.h>
#include <stdlib.h>
typedef struct data
{
int value;
struct data *next;
}data;
int main()
{
int i;
data **d = calloc(3, sizeof(data));
for(i = 0; i < 3; i++)
{
d[i] = calloc(1, sizeof(data));
scanf("%d", &d[i]->value);
printf("d[%d]= %d\n", i, d[i]->value);
}
for(i = 0; i < 3; i++)
{
if(i<3)
d[i]->next = d[i+1];
}
for(i = 0; i < 3; i++)
{
if(d[i]->next != NULL)
printf("Successivo di d[%d]: %d\n", i, d[i]->next->value);
}
return 0;
}