Escolar Documentos
Profissional Documentos
Cultura Documentos
2010/2
AVISO IMPORTANTE: estou enviando apenas um exercício para que seja montado um
projeto com arquivos recebidos. Você irá acrescentar código apenas no último arquivo. Na
hora da prova, leia atentamente as instruções, especialmente para onde copiar os arquivos
(desktop ou alguma outra pasta específica), como renomear, etc. E, o mais importante, se
guie pelo ENUNCIADO das questões. Os arquivos fornecidos tem apenas a finalidade de
ajudar a testar as soluções. É sua a responsabilidade de ler e seguir as instruções da prova.
O formato da prova pode ter diferenças em relação ao do exercício proposto.
Primeiro você deve copiar todos esses arquivos para uma nova pasta. Renomeie o arquivo
TURMA_MATRICULA_SOLUCAO.c, substituindo TURMA pela sua turma (33E ou
33G) e MATRICULA pela sua matricula. Em seguida, abra o visualC e crie um novo
projeto. Adicione cada um dos 6 arquivos (os de extensão .h em Header Files e os de
extensão .c em Source Files) – na opção ADD , selecione add Existing Item, ao invés de
add new Item . Compile o projeto. Execute-o.
/* candidato.h */
/* cand_cria(): recebe o nome (uma cadeia de char), a identidade (um inteiro) e o resultado
de uma candidato (uma estrutura do tipo Resultado ) , cria um novo candidato com essas
informações e retorna um ponteiro para o novo candidato */
Candidato * cand_cria ( char *nome, int ident, Resultado r);
1
/* cand_obtem_nome(): recebe um ponteiro para um candidato e retorna o nome do
candidato. O nome do candidato é representado como uma cadeia de caracteres */
char *cand_obtem_nome (Candidato *c);
/* cand_obtem_ result (): recebe um ponteiro para um candidato e retorna o resultado desse
candidato. O resultado retornado é do tipo Resultado */
Resultado cand_obtem_result(Candidato *c);
Algumas considerações:
A estrutura interna do TAD Candidato (como é a struct ) está escondida (em
Candidato.c) – você não pode acessar diretamente os campos.
Mas a estrutura interna da estrutura Resultado não está escondida (está exposta em
Resultado.h ).
2
E não se preocupe com as linhas comentadas do Resultado.h. Esses comandos são
apenas para evitar que ao se incluir o arquivo várias vezes ter a struct resultado redefinida,
o que implicaria erro.