Ejemplo-Registros

Anuncio
/* Proyecto de NetBeans 7.1 */
#include
#include
#include
#include
<cstdlib>
<stdio.h>
<stdlib.h>
<windows.h>
#define MAX_EST 2
using namespace std;
// columna = x / fila = y
void gotoxy(int columna,int fila) {
printf("%c[%d;%df",0x1B, fila, columna);
}
// Linux
//void clrscr() {
//
system("clear");
//}
// Windows
void clrscr() {
system("cmd /c cls");
}
// Windows
/*void clrscr() {
HANDLE hStdOut = GetStdHandle(STD_OUTPUT_HANDLE);
COORD coord = {0, 0};
DWORD count;
CONSOLE_SCREEN_BUFFER_INFO csbi;
GetConsoleScreenBufferInfo(hStdOut, &csbi);
FillConsoleOutputCharacter(hStdOut, ' ', csbi.dwSize.X * csbi.dwSize.Y,
coord, &count);
SetConsoleCursorPosition(hStdOut, coord);
}*/
typedef struct _est {
int cedula;
char apellido[15];
char nombre[15];
int nota;
} registro;
/*
*
*/
int main(int argc, char** argv) {
registro estudiantes[MAX_EST];
/* Carga de estudiantes */
for (int k=0; k < MAX_EST; k=k+1 ) {
printf("Introducir datos estudiante #%2i:\n", k+1);
printf("Cedula : ");
scanf("%8i" , &estudiantes[k].cedula);
printf("Apellido: ");
scanf("%15S", &estudiantes[k].apellido);
printf("Nombre : ");
//scanf("%10[^\n]", &estudiantes[k].nombre);
scanf("%15S", &estudiantes[k].nombre);
printf("Nota
: ");
scanf("%2i" , &estudiantes[k].nota);
printf("\n");
}
clrscr();
int fila = 3;
gotoxy(01,fila);
printf("Listado de Estudiantes\n");
fila++;
for (int k=0; k < MAX_EST; k++) {
fila = fila + k*1;
gotoxy(01,fila);
printf("%7i", estudiantes[k].cedula);
gotoxy(15,fila);
printf("%S" , estudiantes[k].apellido);
gotoxy(35,fila);
printf("%S" , estudiantes[k].nombre);
gotoxy(65,fila);
printf("%2i", estudiantes[k].nota);
}
// Calculo promedio de notas
int
suma
= 0;
for (int k=0; k < MAX_EST; k++) {
suma = suma + estudiantes[k].nota;
}
float promedio = (suma/(MAX_EST + 0.0));
fila++;
gotoxy(20,fila);
printf("Promedio");
gotoxy(65,fila);
printf("%4.2f", promedio);
return 0;
}
Descargar