• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Upper

Duvidas com um trabalho

1 mensagem neste tópico

Boas. Tou a ter problemas com um trabalho que ja me ocupa a bue.....Eu quero criar um programa para "controlar" professores....nesse programa tenho que criar o professor, dar a nota, ver como estao as suas classificacoes e medias......mas o grande problema que tenho e o inserir o docente e a nota.....

nota.c

#include <stdio.h>

#include <stdlib.h>

#include "nota.h"

#include "docente.h"

#define CLASSF 6

#define NUL_ARG 0

typedef struct nota

{

int numc;

int classificacao[CLASSF];

}infoNota, *apNota;

nota adicionarclf()

{

int classificacao;

nota n;

apNota aux;

aux = (apNota)n;

aux->numc++;

aux->classificacao[classificacao] ++;

}

docente.c

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

#include "docente.h"

#include "nota.h"

#define MAX_CHAR 100

#define NEG_MONO -1

typedef struct docente

{

char Nome[MAX_CHAR];

char Email[MAX_CHAR];

int Numero;

nota n;

}infoDocente, *apDocente;

docente inserirdoc(){

int Numero;

char *Nome;

char *Email;

apDocente aux;

aux = malloc(sizeof(infoDocente));

if(aux ==NULL)

return NULL;

strcpy(aux->Nome,Nome);

strcpy(aux->Email,Email);

aux->Numero=Numero;

aux->n=adicionarclf();

  if (aux->n==NULL)

return NULL;

return(docente)aux;

}

void adicionarclfdoc(){

apDocente aux;

int classificacao;

docente d;

aux = (apDocente)d;

adicionarclf(aux->n,classificacao);

}

int posicao()/*posicao = procurar*/

{

docente d;

int pos;

apDocente aux= (apDocente)d;

return (pos>0) && (pos <= aux->Numero);

}

main.c

case 'I':

if (sscanf(line,"%c %d",&c,&num)!=ARG_USED)

printf("Dados invalidos\n");

else if(num>2000)

printf("Capacidade excedida\n");

else{

inserirdoc();  

printf("Docente inserido com sucesso\n");

}

break;

                                                            case 'A':

if(sscanf(line,"%c %d %d",&c,&num,&classificacao)!=TRIO_ARG)

printf("Dados invalidos\n");

else

{

adicionarclf();

printf("Classificacao adicionada\n");

}

break;

-------------------------------------------

O problema que ta a dar e:

->nao consigo por um docente usando o exemplo de comando:

I pos

Nome

Email

->Adicionar a classificacao nessa posicao

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora