Dev - C++ - pasar un vector de estructuras a una función en C

 
Vista:
sin imagen de perfil
Val: 8
Ha aumentado su posición en 3 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

pasar un vector de estructuras a una función en C

Publicado por Jacky1993 (4 intervenciones) el 26/06/2019 06:01:24
Pues creo que tengo graves problemas de conceptos para pasar un vector de estructuras a una funcion. No importa cuantos cambios haga, me da un monton de errores que no se como solucionar, necesito ayuda porfavor. les paso el programa, solo quiero ayuda para terminar la primer funcion que es la de carga de datos, no quiero me hagan el programa completo, ya que es algo que tengo que realizar yo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
#include <stdio.h>
 
/* Dado un vector de egresados de una carrera

    struct egresado {

    int dni;
    struct fecha_nacim;
    int año_ingreso;
    char sexo;
    }


    struct fecha{

    int dia, mes, anio;
    }


    Construye una funcion que reciba el vector y su largo, luego muestre
    en pantalla el promedio de quienes tardan mas en recibirse, si son
    los hombres o las mujeres.

*/
 
#define  N 3
 
typedef struct fecha_nacim{
 
    int dia;
    int mes;
    int anio;
 
}fecha_nacim_s;
 
 
 
typedef struct egresado{
 
    int dni;
    struct fecha_nacim;
    int anio_egreso;
    char sexo;
 
}egresado_s;
 
 
int ingresar_egresado (struct egresado[], int);
 
 
int main (){
 
struct egresado vec[N];
 
printf ("Primero que nada, usted va a tener que cargar todos los datos de las personas egresadas: ");
ingresar_egresado (vec, 0);
 
 
printf ("Ahora va a ver el promedio de quien tardo mas en recibirse, dependiendo su genero: ");
promedio_egresado ();
 
printf ("Muchas gracias por usar el programa, que tenga un buen dia. Presione una tecla para finalizar: ");
getchar ();
 
return 0;
}
 
 
/* Funcion para ingresar datos */
 
int ingresar_egresado (struct egresado1, int p){
 
    int i;
 
    for (i=0; i < N; i++)
 
    printf ("Ingresar el perfil del egresado, primero el DNI: ");
    scanf  ("%d", &egresado.dni);
 
 
    printf ("Ahora por favor ingrese la fecha de nacimiento, en el siguiente formato: DD/MM/ANIO");
    scanf  ("%2d/%2d/%4d", fecha_nacim.dia, fecha_nacim.mes, fecha_nacim.anio);
 
    printf ("Ahora por favor ingrese el anio de egreso: ");
    scanf  ("%d", egresado.anio_egreso);
 
    printf ("Finalmente ingrese su genero (M/F): ");
    scanf  ("%c", egresado.sexo);
 
 
    return ingresar_egresado;
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 417
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

pasar un vector de estructuras a una función en C

Publicado por Thanatos (199 intervenciones) el 26/06/2019 08:43:09
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <stdio.h>
 
typedef struct Fecha Fecha;
struct Fecha {
    int dia;
    int mes;
    int anio;
};
 
typedef struct Egresado Egresado;
struct Egresado {
    int dni;
    Fecha fechaNac;
    int anioIngreso;
    char sexo;
};
 
enum { N = 3 };
 
void registrarEgresados(Egresado [], int);
 
int main(void) {
    Egresado egresados[N];
 
    registrarEgresados(egresados, N);
 
    return 0;
}
 
void registrarEgresados(Egresado egresados[], int n) {
    printf("Ingrese los datos de los %i egresados:\n\n", n);
 
    for (int i = 0; i < n; ++i) {
        printf("EGRESADO #%i\n", i + 1);
 
        printf("DNI: ");
        scanf("%i", &egresados[i].dni);
 
        char barra;
        printf("F. Nac (DD/MM/AAAA): ");
        scanf("%i%c%i%c%i",
              &egresados[i].fechaNac.dia, &barra,
              &egresados[i].fechaNac.mes, &barra,
              &egresados[i].fechaNac.anio);
 
        printf("Anio de ingreso: ");
        scanf("%i", &egresados[i].anioIngreso);
 
        printf("Genero (M/F): ");
        scanf(" %c", &egresados[i].sexo);
 
        printf("\n");
    }
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar