Ejemplo de programación en lenguaje C Tema 2: Diseño de un sistema de gestión del desempeño de los estudiantes La información sobre el desempeño de los estudiantes incluye: número de estudiante, nombre, resultados de tres cursos (matemáticas, inglés).
#include lt;stdio.hgt;
#include lt;stdlib.hgt;
#include lt;conio.hgt;
int INDEX[32];
//Variable de estructura
struct STUDENT{
int id;
int age; /p>
int chino, matemáticas, inglés
nombre de char[21];
}estudiantes[32]
void page_title( char *menu_item){
printf("gt; gt; gt; sistema de gestión de estudiantes lt; lt; lt; \n\n- s -\n\n", menu_item
<); p>}void return_confirm(void){
printf("\nPresione cualquier tecla para regresar...\n");
getch() ;
}
void Student_new(void){
int n;
page_title("Ingrese la información básica del estudiante");
for(n=0;nlt;32;n)
if(estudiantes[n].id==0) descanso;
printf("学Número: ");
scanf("d", estudiantes[n].id);
printf("Nombre: ");
scanf( "s",amp;estudiantes[n].nombre);
printf("Edad:");
scanf("d",amp;estudiantes[n] .age );
return_confirm();
}
int search_id(void){
int n, i;
p>
printf("Ingrese el número de estudiante: ");
scanf("d", amp;
for(n=0); ; nlt; 32; n )
{
if(estudiantes[n].id==iamp; estudiantes[n].id!=0)
{
printf("Número de estudiante: d\n", estudiantes[n].id);
printf("Nombre: s\n", estudiantes[n ].nombre );
printf("Edad: d\n", estudiantes[n].edad
return
} p>
}
printf("\nEl error de entrada o el número de estudiante no existe.\n");
return
}
void Student_del(void){
int n;
page_title("Cancelar información básica del estudiante");
if(( n=id_búsqueda ())!=-1)
estudiantes[n].id=0;
printf("\n!El estudiante ha cerrado sesión.\n");
return_confirm();
}
void Student_edit(void){
int n;
page_title("Editar información básica del estudiante"); ( (n=search_id())!=-1)
{
printf("\nVuelva a ingresar la nueva información:\nID del estudiante: ");
scanf("d",amp; estudiantes[n].id);
printf("Nombre:");
scanf("s",amp;estudiantes [n].nombre);
printf("Edad:");
scanf("d", & estudiantes[n].edad);
}
return_confirm();
}
void score_input(void){
int s, n, t < / p>
page_title("Ingrese resultados");
printf("\nPor favor use las teclas numéricas para seleccionar materias\n1-Chino 2-Matemáticas 3-Inglés\n");
scanf("d",amp; s);
for(n=0;nlt;32;n)
{
si (estudiantes[n].id!=0)
{
printf("Número de estudiante: d Nombre: s Grado:", estudiantes[n].id, estudiantes[n ].nombre);
scanf("d",amp;t);
interruptor(es)
{
caso 1: estudiantes[n].chinese=t;break;
caso 2: estudiantes[n].math=t;break;
caso 3: estudiantes[n].inglés =t; romper;
}
}
}
return_confirm(); p>
void score_edit(void){
int n;
page_title("Modificar puntuación");
if((n=search_id( ))!=-1)
{
printf("Chino: d Matemáticas: d Inglés: d\n", estudiantes[n].chino, estudiantes[n]. matemáticas, estudiantes[n].inglés);
printf("\nVuelva a ingresar la puntuación:\nchino:");
scanf("d",amp; estudiantes [n].chinese);
printf("Matemáticas:");
scanf("s", & estudiantes[n].math);
printf("Inglés: ");
scanf("d",amp; estudiantes[n]
].english);
}
return_confirm();
}
void sort_it(char nn){
int n, m, p, x, t[32];
for(n=0; nlt; 32; n )
{
cambiar(nn)
{
caso '1': t[n]=estudiantes[n].id
caso '2'; : t[n]=estudiantes[n].chinese; descanso
caso '3' : t[n]=estudiantes[n].matemáticas
caso '; 4': t[n]=estudiantes[n].inglés; descanso;
case '5': t[n]=estudiantes[n].estudiantes chinos[n].estudiantes de matemáticas[n] .inglés; romper;
}
}
para(n=0;nlt;32;n)
{ p> p>
x=0;
p=-1;
for(m=0; mlt; 32; m )
{ p>
if(t[m]gt; x)
{
x=t[m];
p=m;
p>}
}
t[p]=-1
ÍNDICE[n]=p; >
}
}
navegador vacío(void){
int n, x
char k ; p>
sort_it('1');
while(1)
{
page_title("Examinar");
printf( "Presione las teclas numéricas para seleccionar el método de clasificación o presione 0 para regresar\n");
printf("ID de estudiante-1\tNombre\tEdad\tChino-2\tMatemáticas-3 \tInglés- 4\tPuntuación total-5\n");
for(n=0;nlt;32;n)
{
if( ÍNDICE[ n]!=-1)
{
x=ÍNDICE[n];
printf("d\ts\t", estudiantes[ x] .id, estudiantes[x].nombre);
printf("d\td\t", estudiantes[x].edad, estudiantes[x].chino);
printf("d\td\t", estudiantes[x].matemáticas, estudiantes[x].inglés);
printf("d\n", estudiantes[x].estudiantes chinos[ x] .estudiantes de matemáticas[x].inglés);
}
}
k=getch();
if( klt; '6'amp;amp;kgt;'0') ordenar_i
t(k);
más si(k=='0') romper
más continuar
}
}
void main(void){
menu: page_title("Menú de operación");
printf("Utilice las teclas numéricas para seleccionar la operación\ n\n ");
printf("1 Ingresar información básica del estudiante\n2 Modificar información básica del estudiante\n");
printf("3 Cerrar sesión en información básica del estudiante\n \n4 Introducir puntuaciones \n5 Modificar resultados\n\n");
printf("6 Explorar...\n \n0 Salir\n");
switch(getch ())
{
caso '1': estudiante_nuevo();
caso '2': estudiante_edit(); >
caso '3': estudiante_del(); descanso;
caso '4': puntaje_input(); descanso;
caso '5': puntaje_edit(); ;
caso '6': navegador(); descanso;
caso '0': salida(0);
}
ir al menú;
}
¿Ver si coincide? ¿Quieres la versión C?