Ir para conteúdo
Fórum Script Brasil
  • 0

Preciso fazer um programa em C que exiba alguns itens de um cadastro


Aeviles Aguiar Silva

Pergunta

Preciso fazer um programa o qual precisa fazer algumas listagens. Sou nova em programação e estou em duvidas como fazer a exibição desses dados. para poder listar, 

Regras

O código do cadastro é sequencial, o sistema incrementa sozinho

no maximo 4 cadastros

Ao cadastrar o item no campo status deve ser armazenado 1,2,3 - 1 representa -A fazer, 2 -Fazendo e 3 -Concluído.

Os dados não serão armazenados em arquivos , após encerrado eles serão apagados

A minha duvida principal é como listar os dados  a fazer, fazendo e concluido.

Se alguém puder me auxiliar eu agradeço;

 

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <string.h>        // UTILIDADE = COPIAR UMA STRING EM OUTRA
#include <conio.h>    //UTILIDADE = MUDANCA DE COR
#define MAX 4


typedef struct {
    
    int codigo;
    char titulo[20];
    char descricao[30];
    int ano;
    char status[10];
    int ativo;
    int codst;
    char responsavel[30];
}ProjetoDados;

 ProjetoDados projeto[MAX];/*Maximo de projetos cadastrados*/
 

 /*Protótipo da função*/
void menu();
void cadastrar();
void listar();
void andamento();
void afazer();
void concluido();
void pesquisar();
void remover();


 int main(int argc, char *argv[]) {
 setlocale(LC_ALL, "Portuguese");
system("color 03");        //Testando cor


menu();


     return 0;
 }

/*Function Menu*/
 void menu(){
     int op;
     do{
    
    system("cls");
     printf(" %c----------------------------------------------------------------------------%c\n",201,187);
      printf(" | ");printf("\t\t\t     CADASTRO DE PROJETOS");printf("\t\t\t      |\n");
      printf(" %c----------------------------------------------------------------------------%c\n",200,188);
     printf(" %c----------------------------------------------------------------------------%c\n",201,187);
      printf(" | ");printf("\t\t\t     *****   MENU   *****");printf("\t\t\t      |\n");
      printf(" %c----------------------------------------------------------------------------%c\n",200,188);
      printf(" %c----------------------------------------------------------------------------%c \n",201,187);
      printf(" | <1>  Cadastro de Projeto                                                   |\n");
      printf(" |----------------------------------------------------------------------------|\n");
      printf(" | <2>  Listar Todos os projetos                                              |\n");      
      printf(" |----------------------------------------------------------------------------|\n");
      printf(" | <3>  Listar projetos em andamento(fazendo)                                 |\n"); 
      printf(" |----------------------------------------------------------------------------|\n");
      printf(" | <4>  Listar projetos a fazer                                               |\n"); 
      printf(" |----------------------------------------------------------------------------|\n");
      printf(" | <5>  Listar projetos Concluidos                                            |\n"); 
      printf(" |----------------------------------------------------------------------------|\n");
      printf(" | <6>  Pesquisar                                                             |\n");
      printf(" |----------------------------------------------------------------------------|\n");
      printf(" | <7>  Remover                                                               |\n");
      printf(" |----------------------------------------------------------------------------|\n");
      printf(" | <0>  Sair                                                                  |\n");
      printf(" %c----------------------------------------------------------------------------%c",200,188);
      printf("\n\n\n\n");
      
    scanf("%d", &op);/*&op -ponteiro - endereço de memoria*/
    fflush(stdin);
    getchar();

    switch(op){
        
        case 1:
            cadastrar();
        break;
            
        case 2:
            listar();
        break;
        
        case 3:
            andamento();
        break;
        case 4:
            afazer();
        break;
        
        case 5:
            concluido();
        break;
        case 6:
            pesquisar();
        break;
        case 7:
            remover();
        break;

    }
    getchar();
    }while(op!=0);

}

void cadastrar(){
    
    int op, i;
    int totalfazer=0, totalFazendo=0, totalConcluido=0;
    int totalProjeto=0;
    int codst;
    char opst;
    
    
    
    do{
        system("cls");/*limpa a tela*/
      printf(" %c----------------------------------------------------------------------------%c \n",201,187);
      printf(" |      Cadastro de Projeto                                                   |\n");
      printf(" |----------------------------------------------------------------------------|\n");
      
      printf("\nCodigo: %d\n",i+1);
      printf("\nTitulo:");;
      gets(projeto[i].titulo);
      fflush(stdin);
      printf("\nDescricao:");
      gets(projeto[i].descricao);
      fflush(stdin);
      printf("\nAno:");
      scanf("%d",&projeto[i].ano);
      fflush(stdin);
      printf("\nResponsavel:");
      gets(projeto[i].responsavel);      
      fflush(stdin);

      
     printf("\nDefina o status do projeto:");
            printf("\n1- A fazer");
            printf("\n2- Fazendo");
            printf("\n3-Concluido\n");
            opst=getch();
            switch(opst){    
                case '1':
                    projeto[totalProjeto].codst=1;
                    strcpy(projeto[totalProjeto].status, "A fazer");
                    totalfazer+=1;
                    break;
                    
                case '2':
                    projeto[totalProjeto].codst=2;
                    strcpy(projeto[totalProjeto].status, "Fazendo");
                    totalFazendo+=1;
                    break;
                    
                case '3':
                    projeto[totalProjeto].codst=3;
                    strcpy(projeto[totalProjeto].status, "Concluido");
                    totalConcluido+=1;
                    break;
            default:
                printf("Opcao Invalida\n");
                strcpy(projeto[totalProjeto].status,"não cadastrado");
            getch();
            }
            printf("\n\n");
      
      /**/
      /*Armazenar no vetor*/
      
         for(i=0; i< MAX; ++i)
                    {
                        
                    if(projeto[i].ativo==0){
                    projeto[i].codigo=i+1;
                    strcpy(projeto[i].titulo,"titulo");
                    strcpy(projeto[i].descricao,"descricao");
                    projeto[i].ano;
                    strcpy(projeto[i].responsavel,"responsavel");
                    strcpy(projeto[i].status,"opst");
                    projeto[i].ativo=1;    
                    
                            
                    break; /*tenho que colocar o break senão ele vai ficar imprimindo sem parar    */
                    
                    }
            }
                    
        
        printf("\n1- Continuar  \n0-Sair");
                scanf("%d",&op);
                fflush(stdin);
                getchar();
            }while(op!=0);
    

}
void listar(){
    system("cls");/*limpar tela*/
    int i;
    
      printf(" |----------------------------------------------------------------------------|\n");
      printf(" | Listar Todos os projetos                                                   |\n");      
      printf(" |----------------------------------------------------------------------------|\n");
    
    for (i=0; i< MAX; ++i){
        
        
        if(projeto[i].ativo==1){
                        printf("-----------------\n");
                        /*Armazenar os dados*/
                    printf("Codigo: %d\n",i+1);
                    printf("Titulo: %s\n",projeto[i].titulo);
                    printf("Descricao: %s\n",projeto[i].descricao);
                    printf("Ano: %d \n",projeto[i].ano);
                    printf("Responsavel: %s\n",projeto[i].responsavel);
                    printf("Status: %s", projeto[i].status);
                        printf("-----------------");
                    
        }
    
}
    
    

}
void andamento(){

}


void afazer(){

}
void concluido(){

}
void pesquisar(){

}
void remover(){

}

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...