Hacer un programa o algoritmo que permita mostrar alumnos ordenados por mayor puntaje de promedio.
Solución
- Entrada: Juan 12, lucia 10, alex 16,Sandra 14
- Salida: alex16,Sandra 14,juan 12,lucia 10
#include <stdio.h> int main(){ char *aux,*n; int w=0,cont=0,tem,t,p,i,j,k; printf("ingresa la cantidad de alumnos a ingresar\n"); scanf("%d",&t); char *Nom[t]; int Prom[t]; for(i=0;i<t;i++){ Nom[i]=""; Prom[i]=0; } while(t>cont){ n=(char *) malloc(sizeof(char)*10); printf("Ingresa nombre\n"); scanf("%s",n); Nom[cont]=n; printf("Ingresa nota\n"); scanf("%d",&p); Prom[cont]=p; cont++; } while(w!=(t-1)){ w=0; for(k=0;k<(t-1);k++){ if(Prom[k]>=Prom[k+1]){ w++; }else{ tem=Prom[k]; Prom[k]=Prom[k+1]; Prom[k+1]=tem; aux=Nom[k]; Nom[k]=Nom[k+1]; Nom[k+1]=aux; } } } for(j=0;j<t;j++){ printf("Nombre: %s Nota: %d\n",Nom[j],Prom[j]); } return 0; }
1 comentarios:
Hola que tal aun<<?
Publicar un comentario