Cool C/C++

Programacion en C/C++

Home Foros
Bienvenido, Invitado
Por favor Identificarse o Registrarse.    Contraseña olvidada?

ayuda con libreta de contactos
(1 viendo) (1) Invitado
AbajoPágina: 1
TEMA: ayuda con libreta de contactos
#144
ayuda con libreta de contactos Creado el día: 24/08/2011 15:36 Karma: 0
por favor me podrian ayudar con este pequeño programa, resulta que despues de introducir llos datos de los contactos en el registro me dicen q todos tienen la edad del ultimo contacto que guarde y no se porque me pasa esto.. aqui le dejo el programa para qu lo vean.

tambien tengo un problema no se que fue lo que hice mal que el registro el nombre sale dañado no se por què.. por favor si alguien sabe de esto y me pueda ayudar se lo agradesco de antemano

#include <stdio.h>
#include <conio.h>
main()
{
struct
{
char nombre[10];
char apellido[10];
int fechaNac;
char telefono[11];
}contactos[4];
int i,fnac,fact,edad;
printf ("agenda de contactos\n");
for (i=1;i<4;i++)
{
printf("\n nombre del contacto %d\n", i);
scanf("%s",&contactos[i].nombre);
printf("\n apellido del contacto %d\n", i);
scanf("%s",&contactos[i].apellido);
printf("\n telefono del contacto %d\n", i);
scanf("%s",&contactos[i].telefono);
printf (" año de nacimiento del contacto");
scanf ("%d",&fnac);
printf ("\nIntroduce el año actual" );
edad=fact-fnac;
scanf ("%d",&fact);

}
("\n registro de contactos\n");
for(i=0;i<4;i++)
{
printf("\n nombre %s", contactos[i].nombre);
printf("\n apellido %s", contactos[i].apellido);
printf("\n telefono %s", contactos[i].telefono);
edad=fact-fnac;
printf("\n la edad del contacto es:%d", edad);
}
getch ();
return 0;
}
thebigHDMI
Navegador Iniciado
Mensajes: 2
graphgraph
Usuario Offline Presiona aquí para ver el perfil de este usuario
Última edición: 24/08/2011 15:48 por thebigHDMI.
El administrador ha deshabilitado la escritura pública.
 
#148
Re: ayuda con libreta de contactos Creado el día: 26/08/2011 09:23 Karma: 2
Tu programa podría quedar del siguiente modo:
(Nota que no hace falta el & cuando lees un arreglo de char con scanf)

#include <stdio.h>
#include <conio.h>

struct
{
char nombre[10];
char apellido[10];
int fechaNac;
char telefono[11];
}contactos[4];
 
main()
{
int i,fact,edad;
 
printf ("agenda de contactos\n");
 
printf ("\nIntroduce el año actual: " );
scanf("%d", &fact);
 
for (i=1;i<4;i++)
{
printf("\n nombre del contacto %d\n", i);
scanf("%s",contactos[i].nombre);
printf("\n apellido del contacto %d\n", i);
scanf("%s",contactos[i].apellido);
printf("\n telefono del contacto %d\n", i);
scanf("%s",contactos[i].telefono);
printf (" año de nacimiento del contacto");
scanf ("%d",&contactos[i].fechaNac);
}
 
("\n registro de contactos\n");
for(i=0;i<4;i++)
{
printf("\n nombre %s", contactos[i].nombre);
printf("\n apellido %s", contactos[i].apellido);
printf("\n telefono %s", contactos[i].telefono);
edad=fact-contactos[i].fechaNac;
printf("\n la edad del contacto es:%d", edad);
}
 
getch ();
return 0;
}
adrianvaca
Administrador
Mensajes: 110
graph
Usuario Offline Presiona aquí para ver el perfil de este usuario
El administrador ha deshabilitado la escritura pública.
El conocimiento es una forma de empezar a ser libre
 
#150
Re: ayuda con libreta de contactos Creado el día: 26/08/2011 21:05 Karma: 0
gracias hermano!!!!
thebigHDMI
Navegador Iniciado
Mensajes: 2
graphgraph
Usuario Offline Presiona aquí para ver el perfil de este usuario
El administrador ha deshabilitado la escritura pública.
 
ArribaPágina: 1
obtén los últimos mensajes directamente en tu escritorio