Ir para conteúdo
Fórum Script Brasil

Eliane21

Membros
  • Total de itens

    2
  • Registro em

  • Última visita

Sobre Eliane21

Eliane21's Achievements

0

Reputação

  1. Eliane21

    Ajuda em funções

    Olá Durub, Obrigada! Arrumei o erro eu estava declarando 2 vezes o struct cadastro cad e o struct cadastro* p. Estou apontando o p para cad para inicializar o ponteiro. Agora está funcionando, porém estou continuando o cadastro e quero fazer várias fichas com todos os campos que eu tenho. No caso, acho que seria só criar assim: struct cadastro cad[15]; Minha dúvida é, como faço para acessar cada campo de cada cadastro? Tentei algo como gets(p[0] -> nome); Mas isso não é possível. Como devo acessar? O código atualizado segue abaixo, desculpe por não usar o codebox, mas ele não está funcionado para mim. bj, Eliane #include<stdio.h> #include<conio.h> struct cadastro /* cria a estrutura cadastro e define suas variaveis */ { char nome[30]; char cargo[20]; char sexo; char cidade [30]; char estado [2]; int codigo; int telefone; int cpf; int idade; int salario; }; struct cadastro cad; /* cria a variavel global cad do tipo estrutura com todos os campos definidos em cadastro */ struct cadastro *p=&cad; /*cria um ponteiro para a estrutura e inicializa com o endereco de cad*/ void listagem(struct cadastro *p) { printf("Nome:%s", p -> nome); printf("\nPressione ENTER para continuar"); getch(); main(); } void inclusao(void) { printf("Digite o nome completo: "); fflush(stdin); gets(p -> nome); printf("Nome cadastrado com sucesso, pressione ENTER para continuar."); getch(); main(); } void exclusao(void) { printf("EXCLUSAO."); getch(); } void alteracao(void) { printf("ALTERACAO."); getch(); } void menu(int opcao) { switch(opcao) { case 1: inclusao(); break; case 2: exclusao(); break; case 3: alteracao(); break; case 4: listagem(p); break; } } main() { int opcao; clrscr(); printf("CADASTRO\n"); printf("============================\n\n"); printf("\t\t 1 INCLUSAO\n\t\t 2 EXCLUSAO\n\t\t 3 ALTERAR\n\t\t 4 LISTAGEM\n\t\t 5 SAIR\n\n"); do { printf("Qual a sua opcao? "); scanf("%d", &opcao); if ((opcao < 1) || (opcao > 5)) { printf("Opcao invalida. "); } else { menu(opcao); } } while ((opcao < 1) || (opcao > 5)); return 0; }
  2. Olá! Sou nova por aqui. Estou tentando fazer um pequeno cadastro em C utilizando struct e ponteiros. Acontece que minha função listagem está retornando (null) mesmo depois de ter cadastrado um nome. Alguém pode me ajudar? Segue o código abaixo: #include<stdio.h> #include<conio.h> struct cadastro /* cria a estrutura cadastro e define suas variaveis */ { char nome[30]; char cargo[20]; char sexo; char cidade [30]; char estado [2]; int codigo; int telefone; int cpf; int idade; int salario; }; struct cadastro cad; /*cria a variavel cad do tipo estrutura com todos os campos definidos em cadastro */ struct cadastro *p; /*cria um ponteiro para a estrutura*/ void listagem(struct cadastro *p) { printf("Nome:%s", p -> nome); getch(); } void inclusao(void) { printf("Digite o nome completo: "); fflush(stdin); gets(p -> nome); listagem(p); } void exclusao(void) { printf("EXCLUSAO."); getch(); } void alteracao(void) { printf("ALTERACAO."); getch(); } void main() { struct cadastro cad; /*cria a variavel cad do tipo estrutura com todos os campos definidos em cadastro */ struct cadastro* p; int opcao; p=&cad; //inicializando o ponteiro p com o endereco de cad clrscr(); printf("CADASTRO"); printf("============================\n\n"); printf("\t\t 1 INCLUSAO\n\t\t 2 EXCLUSAO\n\t\t 3 ALTERAR\n\t\t 4 LISTAGEM\n\t\t 5 SAIR\n\n"); do { printf("Qual a sua opcao? "); scanf("%d", &opcao); switch(opcao) { case 1: inclusao(); break; case 2: exclusao(); break; case 3: alteracao(); break; case 4: listagem(p); break; } } while ((opcao < 1) || (opcao > 4)); }
×
×
  • Criar Novo...