Allora è un evidente problema "di puntatori" ... quindi la maggiore indiziata è la lista (e la sua costruzione) ... Infatti, dovrebbe essere
codice:struct elemento *DNAGen(int k) { struct elemento *list=NULL, *pnew; for(int i=0; i<k; i++) { pnew=(struct elemento*)malloc(sizeof(struct elemento)); pnew->next=list; pnew->info=random_char(); list=pnew; } return list; }