Estou realizando um trabalho para faculdade e estou com dúvidas na utilização de structs e ponteiros, está aparecendo erros como o seguinte:
warning: implicit declaration of function 'CadCurso' [-Wimplicit-function-declaration]
warning: implicit declaration of function 'CadTurma' [-Wimplicit-function-declaration]
Não sei o porque desses erros aparecem no case se eu estou chamando as variaveis dos cadastros e listagens.
#include<stdio.h>#include<stdlib.h>structCurso{int codigo;char nome[50];};structTurma{int codigo;char nome[50];int codigoCurso;};structDisciplina{int codigo;char nome[50];int codigoTurma;};structAluno{int matricula;char nome[50];int codigoDisciplina;};intOpcao(){int valor =0;
printf("\n-------------------------------------------------------");
printf("\n 1-Cadastrar Curso 2-Cadastrar Turma ");
printf("\n 3-Cadastrar Disciplina 4-Cadastrar Aluno ");
printf("\n 5-Listar Turmas 6-Listar Disciplinas ");
printf("\n 7-Listar Aluno 8-Listar Cursos ");
printf("\n 9-Sair ");
printf("\n-----------------------------------------------------\n");
scanf("%d",&valor);return(valor);}//aqui comeca o mainint main(){int opc=99;int TOTAL =0;int qtdCursos =0;int qtdTurmas =0;int qtdDisciplinas =0;int qtdAlunos =0;structCurso* cursos;structTurma* turmas;structDisciplina* disciplinas;structAluno* alunos;
printf("\nInforme o numero de cadastros:");
scanf("%d",&TOTAL);
cursos =(structCurso*)malloc(sizeof(structCurso)* TOTAL);
turmas =(structTurma*)malloc(sizeof(structTurma)* TOTAL);
disciplinas =(structDisciplina*)malloc(sizeof(structDisciplina)* TOTAL);
alunos =(structAluno*)malloc(sizeof(structAluno)* TOTAL);while(opc >0){
opc =Opcao();switch(opc){case1:CadCurso(cursos, TOTAL);break;case2:if(qtdCursos <1){
printf("não existe um curso cadastrado.Cadastre-o primeiro!");}else{
qtdTurmas++;CadTurma(turmas, cursos, TOTAL);break;case3:if(qtdTurmas <1){
printf("não existe uma turma cadastrada.Cadastre-a primeiro!");break;}else{
qtdDisciplinas++;CadDisciplina(cursos,turmas,disciplinas,TOTAL,qtdTurmas);break;case4:if(qtdDisciplinas <1){
printf("não existe uma disciplina cadastrada.Cadastre-a primeiro!");break;}else{
qtdAlunos++;CadAluno(alunos,cursos,turmas,disciplinas,TOTAL);break;case5:ListarTurmas(cursos,turmas,TOTAL);break;case6:ListarDisciplinas(cursos,disciplinas,turmas,TOTAL);break;case7:ListarAluno(alunos,turmas,disciplinas,cursos,TOTAL);break;case8:
qtdCursos++;ListarCursos(cursos,TOTAL,qtdCursos);break;case9:
opc =0;break;default:break;}}
free(cursos);
free(turmas);
free(disciplinas);
free(alunos);return0;}//acabou o mainvoidCadCurso(structCurso* cursos,int TOTAL){int x =0;for(; x < TOTAL; x++){
printf("\nInforme o codigo do curso: ");
scanf("%d",&cursos[x].codigo);
printf("\nInforme o nome do curso: ");
scanf("%s", cursos[x].nome);}}voidCadTurma(structCurso* cursos,structTurma* turmas,int TOTAL){int x =0;for(; x< TOTAL; x++){
printf("\n Informe o codigo do curso %d: ", cursos[x].codigo);
printf("\n Informe o codigo da turma: ");
scanf("%d",&turmas[x].codigo);
printf("Informe o nome da turma: ");
scanf("%s",&turmas[x].nome);}}voidCadDisciplina(structDisciplina* disciplinas,structTurma* turmas,structCurso* cursos,int TOTAL,int qtdTurmas){if(qtdTurmas <1){
printf("Não existe turma(s) cadastradas no sistema !\n");}else{int x =0;for(; x< TOTAL; x++){
printf("\n Informe o codigo do curso %d : ", cursos[x].codigo);
printf("\n Informe o codigo da turma %s: ");
scanf("%d",&turmas[x].codigo);
printf("\n Informe o codigo da disciplina: ");
scanf("%d",&disciplinas[x].codigo);
printf("Informe o nome da disciplina: ");
scanf("%s",&disciplinas[x].nome);}
qtdTurmas++;}voidCadAluno(structAluno* alunos,structTurma* turmas,structDisciplina* disciplinas,structCurso* cursos,int TOTAL){int x =0;for(;x < TOTAL;x++){
printf("\n Informe a matricula do aluno:");
scanf("%d",&alunos[x].matricula);
printf("\n Informe o nome do aluno:");
scanf("%s",&alunos[x].nome);
printf("\n Informe o curso que o aluno esta inserido:");
scanf("%d",&cursos[x].codigo);
printf("\n Informe as disciplinas que o aluno cursa:");int i =0;for(; i <3;i++){
printf("\n Codigo da disciplina:");
scanf("%d",&disciplinas.codigo);
printf("\n Nome da disciplina:");
scanf("%s",&disciplinas.nome);}}}voidListarAluno(structAluno* alunos,structDisciplina* disciplinas,structTurma* turmas,structCurso* cursos,int qtdAlunos){if(qtdAlunos <1){
printf("Não existe aluno(s) cadastrados no sistema !\n");}else{int matriculaAluno;
printf("\n Matricula do aluno: ");
scanf("%d",&matriculaAluno);int i =0;for(; i < qtdAlunos; i++)if( alunos.matricula == matriculaAluno ){
printf("Matricula: %d | Nome: %s\n", alunos.matricula, alunos.nome );
printf("__________________________________________________");
printf("Disciplina:\n");
printf("Codigo da disciplina: %d \n", disciplinas.codigo);
printf("Nome do aluno: %s \n", disciplinas.nome);
printf("__________________________________________________");
printf("Turma:\n");
printf("Codigo da Turma: %d \n", turmas.codigo);
printf("Nome da turma: %s \n", turmas.nome);
printf("__________________________________________________");
printf("Curso:\n");
printf("Codigo do Curso: %d \n", cursos.codigo);
printf("Nome do Curso %s \n", cursos.nome);
printf("__________________________________________________");
printf("\n");}}}voidListarTurmas(structCurso* cursos,structTurma* turmas,int qtdTurmas){//verificando se a quantidade de turmas é menor que 0if(qtdTurmas <1){
printf("Não existe turmas cadastradas!\n");}//lendo o codigo do cursoint codigoCurso;
printf("\n Código do Curso: ");
scanf("%d",&codigoCurso);//listando turmasint i =0;for( i; i < qtdTurmas; i++)if( turmas.codigoCurso == codigoCurso ){
printf("Código da Turma: %d \n", turmas.codigo);
printf("Nome da turma: %s \n", turmas.nome);
printf("\n");}}voidListarDisciplinas(structCurso* cursos,structTurma* turmas,structDisciplina* disciplinas,int qtdDisciplinas){int codigoCurso =0;
printf("\n Código do Curso: ");
scanf("%d",&codigoCurso);if(qtdDisciplinas <1){
printf("Não existe disciplinas!\n");}int i =0;int codigoTurma =0;for(; i < qtdDisciplinas; i++)if( disciplinas.codigoTurma == codigoTurma ){
printf("Código da Turma: %d \n", disciplinas.codigo);
printf("Nome da turma: %s \n", disciplinas.nome);}}voidListarCursos(structCurso* cursos,int qtdCursos){int codigoCurso;
printf("\n Código do Curso: ");
scanf("%d",&codigoCurso);if(qtdCursos <1){
printf("Não existe cursos cadastrados!\n");}int i =0;for(; i < qtdCursos; i++)if(cursos.codigo == codigoCurso ){
printf("Código do Curso: %d \n", cursos.codigo);
printf("Nome do curso: %s \n", cursos.nome);}}}
Pergunta
CarolineSantos
Estou realizando um trabalho para faculdade e estou com dúvidas na utilização de structs e ponteiros, está aparecendo erros como o seguinte:
warning: implicit declaration of function 'CadCurso' [-Wimplicit-function-declaration]
warning: implicit declaration of function 'CadTurma' [-Wimplicit-function-declaration]
Não sei o porque desses erros aparecem no case se eu estou chamando as variaveis dos cadastros e listagens.
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.