lista de listas - C
boa noite galera, seguinte apesar de ja ter procurado no forum e na net to com uma dificuldade em trabalhar com uma lista de listas..
ex...
vamos supor que tenho as seguintes structs...
typedef struct alunos
{
char nome[TAM];
notas *notas;
struct alunos *anterior, *proximo;
}alunos;
typedef struct disciplinas
{
char cadeira[TAM];
alunos *aluno;
struct disciplinas *anterior, *proximo;
}disciplinas;
// aqui nessa funca pretendia atrelar um aluno a uma disciplina ja cadastrada...
int insertAlunoDisciplina(char aluno[TAM], char cadeira[TAM])
{
alunos *novoA = NULL;
novoA = ( alunos*) malloc(sizeof(alunos));
disciplinas *novo = inicioCadeiras;
novo = ( disciplinas* ) malloc( sizeof( disciplinas ) );
if(novo == NULL)
{
fprintf(stdout, "NENHUMA DISCIPLINA CADASTRADA...");
return -1;
}
// percorrendo as disciplinas...
while(novo != NULL)
{
// se encontra cadeira, cadastro aluno...
if(searchDisciplina(cadeira))
{
fprintf(stdout, "ACHEI A DISCIPLINA...");
insertAluno(aluno);
}
else
fprintf(stdout, "NAOOOO ACHEI A DISCIPLINA...");
novo = novo->proximo;
}
}como vcs podem notas ambas sao suplamente encadeadas...
mas minha duvida eh a seguinte, como fazer pra que quando eu criar uma cadeira possa atrelar uma aluno a ela...
consigo criar as disciplinas, os alunos mas em listas separadas, nao saquei como faco pra apontar um determinado aluno pra lista disciplina...
alguem pode me dar uma help, pode ser com uma explicacao ou mesmo um trecho de codigo mesmo que generico que faca um insert em uma lista que um dos campos seja um ponteiro pra um outra lista...
se alguem puder me ajudar agradeco a todos...
obrigado...
ps: estou tentando a seguinte logica...
primeiro cadastro as disciplinas...
isso ta ok...
depois disso crio os alunos, pedindo antes em que disciplina deseja criar, encontro a disciplina e nesse ponto empaquei, nao consigo atrelar o aluno a essa disciplina ja criada...
resumindo seria essa minha duvida...
Discussão (3)
Carregando comentários...