[ Foro de C++ ]
El programa debe realizar 30 registros con nombre, matricula, 9 calificaciones y promedio final. Pero necesito que la pantalla de salida este ordenada de la sig. forma.
EJEMPLO:
1-Nombre ApellidoPaterno ApellidoMaterno | 9 | 6 | 7 | 5 | 10 | 10| 8 | 5 | 10 | 7.90 |
CODIGO
#include <stdio.h>
#include <conio.h>
int main()
{
float prom = 0, matriz[30][9];
int i, j, matricula[30];
char nombre[2][35];
for (i = 1; i <= 30; i++)
{
printf_s("Ingrese su nombre completo: "); gets_s(nombre[i], 50);
printf_s("Ingresa numero de boleta: ", i); scanf_s("%d", &matricula[i]);
for (j = 1; j <= 9; j++)
{
printf_s("Ingresa numero %d: ", j); scanf_s("%f", &matriz[i][j]);
prom += matriz[i][j] / 9;
}
}
printf_s("Nombre|Matricula | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | PROMEDIO |\n");
for (i = 1; i <= 30; i++)
{
printf_s("%d-%s|%d", i, nombre[i], matricula[i]);
for (j = 1; j <= 9; j++)
{
printf("|%.0f", matriz[i][j]);
}
printf_s("|%.2f|", prom);
}
_getch();
}
La mayoría de la lógica es buena, pero estás repitiendo las dos barras verticales al lado de cada elemento que escribes. En lugar de eso, escribe sólo una de las dos barras, la derecha por ejemplo.
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)