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;
}
Instalação e configuração do Chrony
Programa IRPF - Guia de Instalação e Resolução de alguns Problemas
Criando uma Infraestrutura para uma micro Empresa
O Que Fazer Após Instalar Ubuntu 25.04
O Que Fazer Após Instalar Fedora 42
Debian 12 -- Errata - Correções de segurança
Instalando o Pi-Hole versão v5.18.4 depois do lançamento da versão v6.0
Instalação de Drivers da Placa de Vídeo [RESOLVIDO] (5)
NAT LoopBack - Hairpin NAT (0)
Música que eu compus, será que ficou boa? (4)
Alguém poderia me ajudar a escolher peças pra montar um desktop? (3)