Programacion c++ – ordenar promedio de notas


Arreglos en c++ ejercicios resueltos

c++ – ordenar promedio de notas

Los ejercicios desarrollados en este post son a través del programa Borland. Para obtener el programa, clic en el siguiente enlace: Descargar Borland

Mediante programación en C++, desarrolle un programa que permita desarrollar un programa que tenga lo sgte:  struct alumno{
                                               char codigo[9];
                                                 char nombre[20];
                                      int nota1;
                                     int nota2;
                                     int nota3;
                      };  

el programa debe registrar n cantidad de alumnos, con sus respectivas notas, y debe imprimir todos los alumnos con sus notas y promedios correspondientes de forma ordenada de promedio menor a promedio mayor.

#include<iostream.h>
#include<conio.h>
#define lim 100
struct alumno{
               char codigo[9];
               char nombre[20];
               int nota1;
               int nota2;
               int nota3;
               };
void leer(int, struct alumno[]);
void ordenar(int, struct alumno[]);
void listado(int, struct alumno[]);
void main()
{int n;
struct alumno alu[lim];
cout<<"Cantidad de alumnos:"; cin>>n;
leer(n,alu);
ordenar(n,alu);
cout<<"Orden segun su promedio:"<<endl;
listado(n,alu);
getch();
}
void leer(int n, struct alumno x[])
{int i;
 for(i=0;i<n;i++)
 {cout<<"Codigo :"; cin>>x[i].codigo;
  cout<<"Nombre :"; cin>>x[i].nombre;
  cout<<"Nota 1 :"; cin>>x[i].nota1;
  cout<<"Nota 2:"; cin>>x[i].nota2;
  cout<<"Nota 3:"; cin>>x[i].nota3;
  }
  getch();
 }
 void ordenar(int n, struct alumno x[])
 {int i,j;
 struct alumno temp;
  for(i=1;i<n;i++)
   for(j=n-1;j>=i; j--)
   if((x[j-1].nota1+x[j-1].nota2+x[j-1].nota3)/3>(x[j].nota1+x[j].nota2+x[j].nota3)/3)
   {temp=x[j-1];
    x[j-1]=x[j];
    x[j]=temp;
    }
  }
  void listado(int n, struct alumno x[])
  {int i;
  for(i=0;i<n;i++)
  {cout<<x[i].codigo<<"t";
   cout<<x[i].nombre<<"t";
   cout<<x[i].nota1<<"t";
   cout<<x[i].nota2<<"t";
   cout<<x[i].nota3<<"t";
   cout<<(x[i].nota1+x[i].nota2+x[i].nota3)/3<<endl;
   }
  }

Te puede interesar:

  • Usas los programas Word, Power Point, Excel y otros programas de office, en este post te mostraré los productos más vendidos para comprar licencia office barato
-->

Esta entrada tiene 3 comentarios

  1. albero

    Perfecto muchas gracias. saludos

  2. Albero

    No funciona

    1. admin

      al inicio del código, hay un error, ya lo arreglé. Ahora ya puedes copiarlo otra vez.

Comentarios cerrados.