Si mal no entiendo lo que querés hacer, parece que lo que necesitas es un arreglo de
horariostypedef struct {
char nombre_medico [20];
char apellido_medico [20];
char dni_medico [8];
char especialidad [20];
char domicilio_medico [30];
char nro_consultorio [2];
char telefono_medico [15];
/* Esto es 1 solo horario, necesitarias un arreglo */
horario_atencion horario;
} medico;
Podrías querer algo asi:
#include <stdio.h>
#include <iostream>
#include <string.h>
typedef struct {
char dia [9];
int hora_inicio;
int minutos_inicio;
int hora_finalizacion;
int minutos_finalizacion;
} horario_atencion;
typedef struct {
char nombre_medico [20];
char apellido_medico [20];
char dni_medico [8];
char especialidad [20];
char domicilio_medico [30];
char nro_consultorio [2];
char telefono_medico [15];
/* USAS UN ARREGLO DE HORARIOS */
horario_atencion *horarios;
} medico;
void alta_medico (medico m[], int &lim);
void alta_medico (medico m[], int &lim)
{
int cant_dias;
while (lim>50)
{
printf ("Cuantos medicos desea ingresar?");
scanf ("%d", &lim);
}
for (int i=0;i<lim;i++)
{
printf ("Ingrese el nombre del medico: ");
gets (m[i].nombre_medico);
fflush (stdin);
printf ("Ingrese el apellido del medico: ");
gets (m[i].apellido_medico);
fflush (stdin);
printf ("Ingrese el DNI del medico: ");
gets (m[i].dni_medico);
printf ("Ingrese la especialidad del medico: ");
gets (m[i].especialidad);
fflush (stdin);
printf ("Ingrese el domicilio del medico: ");
scanf ("%[^\n]", m[i].domicilio_medico);
fflush (stdin);
printf ("Ingrese el numero de consultorio del medico: ");
gets (m[i].nro_consultorio);
fflush (stdin);
printf ("Ingrese el telefono del medico: ");
gets (m[i].telefono_medico);
fflush (stdin);
printf (" Cuantos dias a la semana trabajara el medico: ");
scanf ("%d", &cant_dias);
/* CREAS EL ARREGLO DE HORARIOS */
m[i].horarios = new horario_atencion[cant_dias];
for (int j=0;j<cant_dias;j++)
{
printf ("Ingrese el dia de la semana: ");
scanf ("%s", &m[i].horarios[j].dia);
fflush (stdin);
printf ("Ingrese la hora de comienzo de la consulta para el dia %s: ", m[i].horarios[j].dia);
scanf ("%d", &m[i].horarios[j].hora_inicio);
printf ("Ingrese los minutos de comienzo de la consulta para el dia %s: ", m[i].horarios[j].dia);
scanf ("%d", &m[i].horarios[j].minutos_inicio);
printf ("Ingrese la hora de finalizacion de la consulta para el dia %s: ", m[i].horarios[j].dia);
scanf ("%d", &m[i].horarios[j].hora_finalizacion);
printf ("Ingrese los minutos de finalizacion de la consulta para el dia %s: ", m[i].horarios[j].dia);
scanf ("%d", &m[i].horarios[j].minutos_finalizacion);
}
}
}
Espero te sirva. Saludos