febrero 26, 2013

EJEMPLO: ALUMONOS - LEE EN ARREGLOS UNIDIMENCIONALES


Función que lee las matrículas (números enteros) y las calificaciones (tipo char) de los alumnos de un grupo y las almacene en dos arreglos unidimensionales. La función deberá leer los datos hasta que se de una matrícula cero la cual indica el fin de captura. La función regresa el número de alumnos por el mecanismo de return. Después debe de imprimir el contenido de los arreglos.

#include stdio.h

void despliega(int *mats,char *califs,int numcap);
int leedato(int *mats,char *califs,int maximo);

void main(void){
int max=30,matr[29],numalumn;
char calif[29];

 clrscr();

 numalumn=leedato(matr,calif,max);
 printf("\nEl numero de alumnos capturados es %d",numalumn);
 despliega(matr,calif,numalumn);

}
 int leedato(int *mats,char *califs,int maximo){

  int n=0;

  printf("\n   *** Introduce la matricula y su calificacion.  ***");
  printf("\n   *** Para terminar dale un cero a la matricula. ***");

   while(1){

    if(n>=maximo){
    printf("\nEl arreglo se encuentra lleno");
    getch();
    break;
   }
     printf("\n\nMatricula del alumno %d: ",n+1);
     scanf("%d",mats);

      if(*mats==0){
      break;
     }
       printf("\nCalificacion del alumno %d: ",n+1);
       scanf("%d",califs);

       mats++;
       califs++;
       n++;
 }
return n;
}

 void despliega(int *mats,char *califs,int numcap){

   int i=1;

    while(1){

      if(i>numcap){
      break;
     }
       printf("\nLa calificacion del alumno %d es %d",*mats,*califs);
       i++;
       mats++;
       califs++;
   }
        getch();
 }

No hay comentarios:

Publicar un comentario