Escreva um trecho de código para fazer a criação dos novos tipos de dados conforme solicitado abaixo:
  • Horário: composto de hora, minutos e segundos.
  • Data: composto de dia, mês e ano.
  • Compromisso: composto de uma data, horário e texto que descreve o compromisso.

Passo 1

Neste exercício precisamos definir três tipos compostos em C: Horário, Data e Compromisso. Para isso, em C usamos a palavra-chave typedef junto com struct para criar novos tipos de dados compostos.

Passo 2

Definimos o tipo Horario com três campos inteiros: hora, minuto e segundo.
Definimos o tipo Data com três campos inteiros: dia, mês e ano.
Definimos o tipo Compromisso que agrupa uma Data, um Horario e uma string para a descrição.

Resposta

#include <stdio.h>
typedef struct {
int hora;
int minuto;
int segundo;
} Horario;
typedef struct {
int dia;
int mes;
int ano;
} Data;
typedef struct {
Data data;
Horario horario;
char descricao[100];
} Compromisso;
int main() {
Compromisso c;
c.data.dia = 15;
c.data.mes = 8;
c.data.ano = 2024;
c.horario.hora = 14;
c.horario.minuto = 30;
c.horario.segundo = 0;
snprintf(c.descricao, sizeof(c.descricao), “Reunião de projeto”);
printf("Data: %02d/%02d/%04d\n", c.data.dia, c.data.mes, c.data.ano);
printf("Horário: %02d:%02d:%02d\n", c.horario.hora, c.horario.minuto, c.horario.segundo);
printf("Descrição: %s\n", c.descricao);

return 0;
}

Exercícios relacionados