Ordenar código fuente de la función
# incluir & ltstring.h & gt
estructura? Estudiante{
intStudent _ ID
Char? Nombre[12];
int? Puntuación;
};
int? principal(vacío){
int? Yo, j;
estructura? ¿alumno? s[10];
¿No válido? Sort(struct?student?*p);
for(I = 0;i<10;i++){
Printf("Ingrese el número de estudiante de %d estudiante:\ n ", I+1);
scanf("%d ", & amps[i].Student_ID); //Reciba la dirección de entrada estándar aquí.
while(getchar()!= ' \ n '); //Libera los caracteres adicionales causados al ingresar aquí el ID del estudiante.
Printf("Ingrese el nombre de %d estudiante:\n ", I+1
j = 0
while((s); [i]). nombre[j]=getchar())! ='\n ')
j++;
s[i]. nombre[j]= '\0'; //Desbordamiento aquí. Simplemente establezca el último número en '\0'.
Printf("Ingrese la puntuación del estudiante %d:\n ", I+1
scanf("%d ", & amps[i]. Puntuación) ; //Recibe aquí la dirección de entrada estándar.
}
Ordenar; //Tienes que ordenar, de lo contrario la pregunta será en vano.
for(I = 0;i<10;i++)
printf("%-6d%s\t%-6d\n ",s[i].ID_Estudiante, s[ i]. Nombre, s[i]. Puntuación); //Utilice el puntero para la salida de cadena y luego formatéelo.
¿Volver? 0;
}
¿Nulo? Sort(struct?student?*p){//¿Es necesario ordenar las preguntas? La lógica del código la estudio yo mismo.
int? I, j, bandera
estructura? ¿alumno? temperatura;
for(I = 0;i<10;i++){
¿Bandera? =?i;
temp = p[I];
for(j = I+1;j & lt10;j++){
si(p [j].score<p[i].score){
¿Marcar? =?j;
}
}
temp = p[bandera];
p[bandera]= p[I] ;
p[I]= temp;
}
}