Enviado em 10/12/2016 - 15:41h
Boa tarde,#include <stdio.h>
#include <time.h>
struct Tveiculo{
char placa[7];
char data_sistema_entra[100];
char hora_sistema_entra[100];
char data_sistema_sai[100];
char hora_sistema_sai[100];} carro[10];
// FUNCAO PARA FORMATACAO DA HORA
char *format(int number);
// FUNCAO PARA RETORNAR DATA
char *data(void);
// FUNCAO PARA RETORNAR HORA
char *hora(void);
int main(){
int opcao;
int i=0;
int j;
int placadig[7];
while (opcao != 4){
printf("Digite a opção desejada\n");
printf("1. ENTRADA DE VEÍCULOS\n");
printf("2. SAÍDA DE VEÍCULOS\n");
printf("3. GERAR HISTÓRICO\n");
printf("4. FECHAR ESTACIONEMENTO\n");
scanf("%d", &opcao);
switch(opcao){
case 1: //ENTRADA DE VEÍCULOS
printf("Digite a placa do veículo\n");
scanf("%s", carro[i].placa);
sprintf(carro[i].data_sistema_entra,"%s",data());
sprintf(carro[i].hora_sistema_entra,"%s",hora());
FILE *file_entra;
file_entra = fopen("C:\\Users\\Yan Martins\\Desktop\\historico\\entrada.txt", "a");
fprintf(file_entra,"PLACA DO VEÍCULO: %s\n",carro[i].placa);
fprintf(file_entra,"DIA DE ENTRADA: %s\n",carro[i].data_sistema_entra);
fprintf(file_entra,"HORA DE ENTRADA: %s\n\n\n",carro[i].hora_sistema_entra);
fclose(file_entra);
i++;
break;
case 2: //SAÍDA DE VEÍCULOS
printf("Digite a placa do veículo\n");
scanf("%s", placadig);
for(j=0; j<30; j++){
if(carro[j].placa == placadig[7]){
sprintf(carro[j].data_sistema_sai,"%s",data());
sprintf(carro[j].hora_sistema_sai,"%s",hora());
FILE *file_sai;
file_sai = fopen("C:\\Users\\Yan Martins\\Desktop\\historico\\saida.txt", "a");
fprintf(file_sai,"PLACA DO VEÍCULO: %s\n",carro[j].placa);
fprintf(file_sai,"DIA DE SAÍDA: %s\n",carro[j].data_sistema_sai);
fprintf(file_sai,"HORA DE SAÍDA: %s\n\n\n",carro[j].hora_sistema_sai);
fclose(file_sai);
}
else{
printf("\nPLACA NÃO EXISTE\n");
}
}
break;
case 3: //GERA HISTÓRICO
printf("PLACA DO VEÍCULO: %s\n",carro[0].placa);
printf("DIA DE SAÍDA: %s\n",carro[0].data_sistema_sai);
printf("HORA DE SAÍDA: %s\n\n\n",carro[0].hora_sistema_sai);
printf("PLACA DO VEÍCULO: %s\n",carro[1].placa);
printf("DIA DE SAÍDA: %s\n",carro[1].data_sistema_sai);
printf("HORA DE SAÍDA: %s\n\n\n",carro[1].hora_sistema_sai);
printf("PLACA DO VEÍCULO: %s\n",carro[2].placa);
printf("DIA DE SAÍDA: %s\n",carro[2].data_sistema_sai);
printf("HORA DE SAÍDA: %s\n\n\n",carro[2].hora_sistema_sai);
break;
case 4: //FIM DO PROGRAMA
printf("ESTACIONAMENTO FECHADO\n");
break;
}
}
}
// FUNCAO PARA FORMATACAO DA HORA
char *format(int number){
char *retorno,
ret[100];
int i;
if (number < 10){
sprintf(ret,"0%d",number);
retorno = ret;
return retorno;
}
else{
sprintf(ret,"%d",number);
retorno = ret;
return retorno;
}
}
// FUNCAO PARA RETORNAR DATA
char *data(void){
int dia,mes,ano;
char var1[100],
var2[100],
var3[100],
var4[100],
*dataPtr;
struct tm *local;
time_t t;
t = time(NULL);
local = localtime(&t);
dia = local -> tm_mday;
mes = local -> tm_mon + 1;
ano = local -> tm_year + 1900;
sprintf(var1,"%s",format(dia));
sprintf(var2,"%s",format(mes));
sprintf(var3,"%s",format(ano));
sprintf(var4,"%s/%s/%s",var1,var2,var3);
// retorna data no formato dd:MM:yyyy com um ponteiro
dataPtr = var4;
return dataPtr;
}
// FUNCAO PARA RETORNAR HORA
char *hora(void){
int hora,minuto,segundo;
char var1[100],
var2[100],
var3[100],
var5[100],
*retorno;
struct tm *local;
time_t t;
t = time(NULL);
local = localtime(&t);
// obtem hora, minuto e segundo e os aloca em uma variavel do tipo inteiro
hora = local -> tm_hour;
minuto = local -> tm_min;
// por algum motivo precisa converter os valores retornados pelos ponteiros
// da funcao em variaveis do tipo char
sprintf(var1,"%s",format(hora));
sprintf(var2,"%s",format(minuto));
// cria a variavel de retorno dos dados e cria um ponteiro para essa variavel
sprintf(var5,"%s:%s",var1,var2);
// retorna hora no formato hh:mm:ss com um ponteiro
retorno = var5;
return retorno;
}
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Impressora Bematech MP4200TH rorando com a distribuição Zorin OS (0)
como fazer overclock na ram? (7)
Existe algum problema de atualizar uma versão lts para uma versão não ... (3)