Problema con código lenguaje C

turcaso20 2 Publicaciones jueves, 23 de enero de 2014Fecha de inscripción martes, 3 de octubre de 2017 Última intervención - 3 oct 2017 a las 17:29 - Última respuesta: misterdekus 61 Publicaciones miércoles, 10 de enero de 2018Fecha de inscripción miércoles, 13 de junio de 2018 Última intervención
- 4 abr 2018 a las 19:17
El modulo lo que debe hacer es permitir al usuario el ingreso de los datos de alumnos en una estructura vacía e intercalarlos de forma que quede ordenado de forma alfabética. Una ayuda :P.El codigo entero tiene un menu con varias opciones pero esta es la que me da problemas al probarlo.

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define N 5
using namespace std;



typedef struct
{
char Nombre[40];
int dni;
int Legajo;
int NotaParcial1;
int NotaParcial2;
int NotaRecuperatorio;
int NotaTallerC;
int NotaRecuperatorioC;
}Alumnos;

void IncorporaAlumno(Alumnos []);

int main(int argc, char** argv) {
Alumnos Al[N];
IncorporaAlumno(Al);
return 0;

}

void IncorporaAlumno(Alumnos alu[])
{
int NumeroLegajo,NumeroDNI,posicion,j,p,i;
char cadenaNombre[40];

printf("ingrese los datos de los alumnos\n");
for(i=0;i<N;i++)
{
printf("Nombre y Apellido\n");
gets(cadenaNombre);
printf("D.N.I\n");
scanf("%d",&NumeroDNI);
getchar();
printf("Legajo\n");
scanf("%d",&NumeroLegajo);
getchar();

if(i==0)
{
strcpy(alu[i].Nombre,cadenaNombre);
alu[i].dni=NumeroDNI;
alu[i].Legajo=NumeroLegajo;
}

else
{printf("%s\n",alu[i].Nombre);
for(j=0;j<i;j++)
{
p=strcmp(alu[j].Nombre,cadenaNombre);
if(p>0)
{
for(posicion=i;posicion>j;posicion--)
{
strcpy(alu[posicion].Nombre,alu[posicio...
alu[posicion].Legajo=alu[posicion-1].Le...
alu[posicion].dni=alu[posicion-1].dni;
}
strcpy(alu[j].Nombre,cadenaNombre);
alu[j].dni=NumeroDNI;
alu[j].Legajo=NumeroLegajo;
}
}
}
}
for(i=0;i<N;i++){
printf("%s\t",alu[i].Nombre);
printf("%d\n",alu[i].Legajo);}
}
Ver más 

Tu respuesta

1 respuesta

misterdekus 61 Publicaciones miércoles, 10 de enero de 2018Fecha de inscripción miércoles, 13 de junio de 2018 Última intervención - 4 abr 2018 a las 19:17
0
Gracias
y donde esta el menu ?
Comenta la respuesta de misterdekus