Imprimir datos de una estructura struct
un gran saludo mi pregunta es teniendo un programa que lo he estado armando poco a poco tengo un problema con imprimir los datos de una estructura llamada contacto ya que solo me imprime un solo registro el punto es que imprima todos los registros que yo haya hecho espero me puedan ayudar
GRACIAS POR SU TIEMPO
printf("\n\n\t\t 1. Agregar contacto. \n\t\t 2. Consultar contactos. \n\t\t 3. Programar evento. \n\t\t 4. Consultar lista de eventos. \n\t\t 5. SALIR...");
printf("\n\n\t-------------------------------------------------------------\n");
printf("\n\t Selecciona la opcion deseada: ");
/*Instrucción que lee una variable de tipo carácter*/
opc=getche();
switch(opc)//Estructura de seleccion multiple
{
case'1': //instrucciones a ejecutar en el caso a
do {
registro contacto;
fflush(stdin);//linea para omitir salto de linea a la funcion gets
printf("\n\n\n\t Apellido(s): ");//impresion en pantalla
gets(contacto.apellido);
fflush(stdin);
printf("\n\t Nombre(s): ");
gets(contacto.nombre2);
fflush(stdin);
printf("\n\t Telefono: ");
scanf("%d",&contacto.telefono);
fflush(stdin);
printf("\n\t e-Mail: ");
gets(contacto.e_mail);
printf("\n\n\t\tEl contacto a quedado registrado...\n\n");
printf("\n\t\t 1. Ingresar nuevo registro. \n\t\t 2. Regresar al menu.");
scanf("%i",&r);
}
while(r==1);
break;
case'2': //instrucciones a ejecutar en el caso
registro contacto;//declaracion de la variable ante la estructura registro
printf("\n\n\t\tContactos Agregados. ");
sprintf("\n\n\n\tApellido: %s, \n\tNombre: %s, \n\tTelefono: %d, \n\te-Mail: %s", contacto.apellido,contacto.nombre2,contacto.telefono,contacto.e_mail);
printf("\n\n");
system("pause");
break;