Jump to content


ruymds

Member Since 09/07/2011
Offline Last Active 05/06/2012, 16:26
-----

#1011902 Registro Em C - Laço

Posted by ruymds on 17/07/2011, 19:29

Olá pessoal,

alguém poderia me ajudar a arrumar este código. Pequeno cadastro de usuario, mas o mesmo esta dando um erro quando chega na linha do codigo do aluno. Tentei inserir um laço for para ser registrado quantos cadastros possiveis atraves de uma mensagem (Deseja cadastrar novamente?) e nao deu certo, estou utilizando um vetor para o registro pois depois quero fazer um relatorio com o mesmo, mas estou com duvida se a sintaxe esta correta. Poderiam me ajudar a solucionar isso.

#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>

/* definicao do tipo Usuario*/
typedef struct{
        int numAluno[4];
        char nome[30];
        int cpf[11];
        char dtNasc[11];
        char endereco[20];
        int telefone[10];
        char cidade[15];
        char estado[2]; 
}aluno;

// Função de cadastro de alunos
void Cadastro_Aluno()
{
   system("cls");
   printf("--------------------------------------------------------------------------------\n");
   printf("                         Cadastro de Alunos\n");
   printf("--------------------------------------------------------------------------------\n");   
     
  
      aluno *vetalunos; // vetor de alunos
      int num=0;  // numero de alunos
      char op; // opção de cadastro
      FILE *arq_aluno; // arq. de armazenamento
         
        // abre o arquivo para leitura 
          arq_aluno = fopen("Cadastro_Usuario.txt","a+");

        // cadastra novo aluno 
          printf("\nCodigo Aluno: ");
          scanf("%i",vetalunos[num].numAluno);   // ESTA APRESENTANDO ERRO NESTA LINHA, NÃO PASSA DAQUI
                          
          printf("\nNome: "); 
          scanf("%s",vetalunos[num].nome);
          
          printf("CPF: "); 
          scanf("%i",vetalunos[num].cpf);
                    
          printf("Data de Nascimento: "); 
          scanf("%s",vetalunos[num].dtNasc);
          
          printf("Endereco: "); 
          scanf("%s",vetalunos[num].endereco);
          
          printf("Telefone: "); 
          scanf("%i",vetalunos[num].telefone);
          
          printf("Cidade: "); 
          scanf("%s",vetalunos[num].cidade);
          
          printf("Estado: "); 
          scanf("%s",vetalunos[num].estado);
          
          printf("\nRegistro gravado com sucesso!\n");
          fflush(stdin);
    
         
        //fwrite(&aluno,sizeof(struct aluno),1,arq_aluno);
        
              // fecha o arquivo
              fclose(arq_aluno);
            
              //libera memoria
              free(vetalunos);

}

obrigado.


IPB Skin By Virteq