
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 :

#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]);
}
}
}


#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]);
}
}
}

Valora esta pregunta


0