Ir ao conteúdo
  • Cadastre-se

Problema com txt em C no Codeblocks


Posts recomendados

Boa tarde pessoal.
Estou tendo uma dificuldade na criação de um programa que faça cadastro de funcionario, classificação de funcionarios em ordem alfabetica, busca de funcionario e remover cadastro...
Só que não consigo criar um arquivo txt de banco de dados para armazenar os cadastros e nem sei como coloca-los em ordem alfabetica...
Alguem pode me dar uma luz?? Aqui vai o algoritmo que já fiz ate agora:
 

 

#include <stdio.h>

#include <stdlib.h>
 
void opcao();
int cont=0;
typedef struct ficha
{
    int codigo;
    char nome[50];
    char endereco[50];
    int idade;
    float salario;
}ficha;
 
ficha funcionario[50];
 
void cadastrar();
//void buscar();
//void modificar();
//void remover();
 
main(void){
 
    FILE *file;
    printf("=================================== Bem Vindo A interface de Cadastro de Funcionarios ===================================\n\n\n");
    system("color f9");
    printf("1 - Cadastrar Funcionario\n");
    printf("2 - Buscar funcionario\n");
    printf("3 - Alterar cadastro de Funcionario\n");
    printf("4 - Remover Cadastro de Funcionario\n");
    printf("5 - Sair\n");
    opcao();
}
void cadastrar(){
    int x=0;
    char op=0;
do{
        FILE *file;
        file = fopen("Banco de Dados.txt", "w");
      system("cls");
      printf("Codigo: ");
      scanf("%i",&funcionario[cont].codigo);
        setbuf(stdin,NULL);
      printf("Nome: ");
      gets(funcionario[cont].nome);
        setbuf(stdin,NULL);
      printf("Endereco: ");
      gets(funcionario[cont].endereco);
        setbuf(stdin,NULL);
      printf("Idade: ");
      scanf("%i",&funcionario[cont].idade);
        setbuf(stdin,NULL);
      printf("Salario: ");
      scanf("%f",&funcionario[cont].salario);
        setbuf(stdin,NULL);
      printf("Cadastrar outro funcionario? (S/N)\n");
        scanf("%c", &op);
        setbuf(stdin,NULL);
        if((op != 's') || (op != 's')){
        x = 1;
        }
        else {
            cadastrar();
        }
        ++cont;
 
      }while(x !=1);
        fnz();
}
 
void opcao(){
    int op=0;
    printf("\=>");
   scanf("%d", &op);
   setbuf(stdin,NULL);
switch(op){
 
    case 1: cadastrar(); break;
 
    case 2: //buscar(); break;
 
    case 3: //modificar(); break;
 
    case 4: //remover(); break;
 
    case 5:
        printf("\n===Programa Finalizado!");
        printf("\a\n===Ate a Proxima\n\n");
        return 0;
        break;
 
    default:
        printf("\a\nOperacao Invalida\n");
        system("pause");
        system("cls");
        main();
        break;
}
}
void fnz(){
    int op=0;
    system("cls");
    printf("========[1]Voltar ao menu\n========[0]Finalizar Programa\n=>");
    scanf("%i",&op);
    setbuf(stdin,NULL);
    switch (op){
case 1:
    system("cls");
    main();
    break;
case 0:
    printf("\n===Programa Finalizado!");
    printf("\a\n===Ate a Proxima\n\n");
    return 0;
    break;
default:
    fnz();
    break;
    }
}

 

Se alguem puder me ajudar, eu agradeço.

 

Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora
  • Moderadores deste setor

  • Quem está navegando aqui   0 membros estão online

    Nenhum usuário registrado visualizando esta página.



Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: ebook Redes Wi-Fi

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!