Mudanças entre as edições de "AP2"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
(Criou página com '==Prova 1== ===Questão Única=== Desenvolver um sistema de controle de estacionamento utilizando listas encadeadas, implementando as funções associadas a este sistema. <cod...')
 
Linha 27: Linha 27:
 
};
 
};
 
   
 
   
+
 
/* protótipos de funções */
+
void listar_carro_por_placa()
void listar_carro_por_hora();
 
void listar_carros();
 
void retirar_carro_estac();
 
void inserir_carro_estac();
 
struct horas *hora_atual();
 
 
 
main()
 
{
 
  int opcao;
 
  struct horas *p;
 
 
  do {
 
    printf("1-Listar por placa 2-Retirar 3-Inserir 4-Listar todos 5-FIM\n");
 
    scanf("%d", &opcao);
 
    switch(opcao) {
 
    case 1: listar_carro_por_hora();
 
            break;
 
    case 2:
 
            retirar_carro_estac();
 
            break;
 
    case 3:
 
            inserir_carro_estac();
 
            break;
 
    case 4:
 
            listar_carros();
 
            break;
 
    default:
 
            break;
 
    }
 
    /* exemplo de uso da função hora */
 
    p=hora_atual();
 
    printf("Hora %d minuto %d\n", p->hora, p->minuto);
 
    free(p);
 
  } while(opcao!=FIM);
 
}
 
 
 
/* lista carros que entraram entre uma dada hora de entrada e de saida */
 
void listar_carro_por_hora()
 
 
{
 
{
 
}
 
}
Linha 99: Linha 59:
 
   
 
   
 
   return p;   
 
   return p;   
 +
}
 +
 +
 +
void main()
 +
{
 +
  int opcao;
 +
  struct horas *p;
 +
 +
  do {
 +
    printf("1-Listar por placa 2-Retirar 3-Inserir 4-Listar todos 5-FIM\n");
 +
    scanf("%d", &opcao);
 +
    switch(opcao) {
 +
    case 1: listar_carro_por_placa();
 +
            break;
 +
    case 2:
 +
            retirar_carro_estac();
 +
            break;
 +
    case 3:
 +
            inserir_carro_estac();
 +
            break;
 +
    case 4:
 +
            listar_carros();
 +
            break;
 +
    default:
 +
            break;
 +
    }
 +
    /* exemplo de uso da função hora */
 +
    p=hora_atual();
 +
    printf("Hora %d minuto %d\n", p->hora, p->minuto);
 +
    free(p);
 +
  } while(opcao!=FIM);
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>

Edição das 15h41min de 18 de junho de 2015

Prova 1

Questão Única

Desenvolver um sistema de controle de estacionamento utilizando listas encadeadas, implementando as funções associadas a este sistema.

#include <time.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
#define FIM 5
 
typedef struct t_carro tipo_carro;
 
struct horas {
    int hora;
    int minuto;
  };
 
struct t_carro {
  char dono[20];
  char placa[9];
  struct horas *entrada;
  tipo_carro *proximo;
};
 

void listar_carro_por_placa()
{
}
 
void retirar_carro_estac()
{
}
 
void inserir_carro_estac()
{
}
 
void listar_carros()
{
}
 
struct horas *hora_atual()
{
   time_t rawtime; 
   struct tm *tminfo; 
   struct horas *p;
 
   time ( &rawtime ); 
   tminfo = localtime ( &rawtime );
 
   if((p=(struct horas *)malloc(sizeof(struct horas)))==NULL)
      return NULL;
   p->hora = tminfo->tm_hour;
   p->minuto = tminfo->tm_min;
 
   return p;   
} 

 
void main()
{
  int opcao;
  struct horas *p;
 
  do {
    printf("1-Listar por placa 2-Retirar 3-Inserir 4-Listar todos 5-FIM\n");
    scanf("%d", &opcao);
    switch(opcao) {
    case 1: listar_carro_por_placa();
            break;
    case 2:
            retirar_carro_estac();
            break;
    case 3:
            inserir_carro_estac();
            break;
    case 4:
            listar_carros();
            break;
    default:
            break;
    } 
    /* exemplo de uso da função hora */
    p=hora_atual();
    printf("Hora %d minuto %d\n", p->hora, p->minuto);
    free(p);
  } while(opcao!=FIM);
}