Dev - C++ - Ayuda con error en la consola

 
Vista:
sin imagen de perfil

Ayuda con error en la consola

Publicado por Miguel (7 intervenciones) el 23/03/2022 03:17:03
Buenos días, tardes o noches, les escribo para pedir su ayuda con mi programa en c, estoy haciendo un ejercicio que es el que se muestra en la imagen , hice el código, lo compile y funciono, pero en la consola al momento de mostrar las canciones que el usuario dígito en pantalla, aparece un error y termina el programa , me gustaria que me dijeran cual es el error para que esto no ocurra, ,les dejo tambien una imagen del error, les dejo el código a continuación :

imagen_2022-03-20_212557


#include<stdio.h>
#include<conio.h>
#define max 20
#define n 1
#define c 5




typedef struct{

char nombre[max];
char apellido[max];
char sexo[max];
char cedula[max];

char cancion[c];


int edad;

}encuesta;

encuesta e[max];
void encuestado();
void lista();
;
int i,j;

int main(){


encuestado();
lista();



getch();
return 0;
}



void encuestado(){

for(i=0;i<n;i++){

printf("Encuestado %i \n\n",i+1);

printf("Nombre : ");
fgets(e[i].nombre,max,stdin);

printf("\n");

printf("Apellido : ");
fflush(stdin);
fgets(e[i].apellido,max,stdin);

printf("\n");

printf("Cedula : ");
fflush(stdin);
fgets(e[i].cedula,max,stdin);

printf("\n");


printf("Edad : ");
scanf("%i",&e[i].edad);

printf("\n");


printf("Sexo :");
fflush(stdin);
fgets(e[i].sexo,max,stdin);
for(j = 0;j < c; j++){
//guardamos canciones

printf("\n");
printf("Intoduce tus 5 canciones favoritas: \n");
printf("TOP[%i] \n",j + 1);
fflush(stdin);
fgets(e[i].cancion,max,stdin);


}





}
}

void lista(){

for(i = 0; i < n; i++){
printf("------------------------------------------------------------ \n ");
printf("------------------------------------------------------------ \n");
printf("Nombre: %s\n",e[i].nombre);
printf("Numero de cedula: %s\n",e[i].cedula);
printf("edad: %i \n", e[i].edad);
printf("sexo: %s",e[i].sexo);
printf("Tus canciones favoritas son: \n");
for(j = 0; j < c; j++){

printf("%s\n",e[i].cancion[j]);
}
}
}

imagen_2022-03-20_212711
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: 1.440
Bronce
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con error en la consola

Publicado por dario (718 intervenciones) el 23/03/2022 05:01:01
Hola, una pregunta que es n y que es c.
Salu2.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Ayuda con error en la consola

Publicado por Miguel (7 intervenciones) el 23/03/2022 05:08:57
Hola, n es la cantidad de personas para la encuesta, lo inicie en 1 para probar el codigo, y c es la cantidad de canciones que se le preguntan a la persona, en ese caso es 5
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 1.440
Bronce
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con error en la consola

Publicado por dario (718 intervenciones) el 23/03/2022 05:13:35
Cuantos caracteres puede tener el nombre de la cancion, incluye espacios en blanco.
Salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 1.440
Bronce
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con error en la consola

Publicado por dario (718 intervenciones) el 23/03/2022 09:13:41
Hola, tu mismo codigo arreglado.
Salu2.

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
#include<stdio.h>
//#include<conio.h>
 
#define max 20
#define n 1
#define c 5
 
typedef struct {
    char nombre[max];
    char apellido[max];
    char sexo[max];
    char cedula[max];
    char cancion[c][40]; //almacena 5 canciones de 40 caracteres de longitud
    int edad;
} encuesta;
 
encuesta e[max];
void encuestado();
void lista();
int i,j;
 
int main() {
    encuestado();
    lista();
    getchar();
 
    return 0;
}
 
void encuestado() {
    for(i=0;i<n;i++) {
        printf("Encuestado %i \n\n",i+1);
        printf("Nombre : ");
        fgets(e[i].nombre,max,stdin);
        printf("\n");
        printf("Apellido : ");
        fflush(stdin);
        fgets(e[i].apellido,max,stdin);
        printf("\n");
        printf("Cedula : ");
        fflush(stdin);
        fgets(e[i].cedula,max,stdin);
        printf("\n");
        printf("Edad : ");
        scanf("%i",&e[i].edad);
        printf("\n");
        printf("Sexo :");
        getchar();
        fgets(e[i].sexo,max,stdin);
        for(j = 0; j < c; j++) {
            //guardamos canciones
            printf("\n");
            printf("Intoduce tus 5 canciones favoritas: \n");
            printf("TOP[%i] \n",j + 1);
            fflush(stdin);
            fgets(e[i].cancion[j],max,stdin);
        }
    }
}
 
void lista(){
    for(i = 0; i < n; i++){
        printf("------------------------------------------------------------ \n ");
        printf("------------------------------------------------------------ \n");
        printf("Nombre: %s\n",e[i].nombre);
        printf("Numero de cedula: %s\n",e[i].cedula);
        printf("edad: %i \n", e[i].edad);
        printf("sexo: %s",e[i].sexo);
        printf("Tus canciones favoritas son: \n");
        for(j = 0; j < c; j++){
            printf("%s\n",e[i].cancion[j]);
        }
    }
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil

Ayuda con error en la consola

Publicado por Miguel (7 intervenciones) el 23/03/2022 14:56:34
Agradecido con tu ayuda, perdón por no contestar estaba dormido, pero muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar