Aqui tengo el siguiente ejercicio:
Código C:
Ver original#include <stdio.h>
#include <windows.h>
#define p printf
#define s scanf
Código C:
Ver originalstruct datos{
char temp1[25];
char temp2[25];
char temp3[25];
int temp4;
char nombre[25][100];
char cedula[25][100];
char telefono[25][100];
int edad[25];
int nota[25];
int temp5;
int salon1;
int salon2;
int salon3;
int salon4;
int prom1;
int prom2;
int prom3;
int prom4;
int promin = 100;
int promax =-100;
int suma;
char nombresalon1[25][100];
char nombresalon2[25][100];
char nombresalon3[25][100];
char nombresalon4[25][100];
char cedulasalon1[25][100];
char cedulasalon2[25][100];
char cedulasalon3[25][100];
char cedulasalon4[25][100];
char telefonosalon1[25][100];
char telefonosalon2[25][100];
char telefonosalon3[25][100];
char telefonosalon4[25][100];
int edadsalon1[25];
int edadsalon2[25];
int edadsalon3[25];
int edadsalon4[25];
int notasalon1[25];
int notasalon2[25];
int notasalon3[25];
int notasalon4[25];
}d;
Código C:
Ver originalvoid reordenar(){
int i,j;
for(i=0;i<d.salon1+d.salon2+d.salon3+d.salon4-1;i++){
for(j=i+1 ; j<d.salon1+d.salon2+d.salon3+d.salon4 ; j++)
if(strcmp(d.
nombre[j
],d.
nombre[i
]<0)){ strcpy(d.
nombre[j
],d.
nombre[i
]); strcpy(d.
cedula[j
],d.
cedula[i
]); strcpy(d.
temp3,d.
telefono[j
]); strcpy(d.
telefono[j
],d.
telefono[i
]); strcpy(d.
telefono[i
],d.
temp3); d.temp4=d.edad[j];
d.edad[j]=d.edad[i];
d.edad[i]=d.temp4;
d.temp5=d.nota[j];
d.nota[j]=d.nota[i];
d.nota[i]=d.temp5;}}}
Código C:
Ver originalvoid buscar(){
int i;
for(i=0 ; i<d.salon1+d.salon2+d.salon3+d.salon4 ; i++){
if(strcmp(d.
buscar,d.
nombre[i
])==0){ p("Datos Encontrados!\n");
p("Organizando!\n");
Sleep(2000);
p("Nombre: %s\nCedula: %s\nTelefono: %s\n Edad: %d\n", d.nombre[i],d.cedula[i],d.telefono[i],d.edad[i]);
}}}
main(){
int op,i;
Código C:
Ver originalp("Cuantos Alumnos hay en la Primera Seccion: \n");
s("%d", &d.salon1);
for(i=0;i<d.salon1;i++){
p("Intruduzca Nombre: \n");
s("%s", &d.nombre[i]);
strcpy(d.
nombresalon1[i
],d.
nombre[i
]); p("Introduzca Cedula: \n");
s("%s", &d.cedula[i]);
strcpy(d.
cedulasalon1[i
],d.
cedula[i
]); p("Introduzca Telefono: \n");
s("%s", &d.telefono[i]);
strcpy(d.
telefonosalon1[i
], d.
telefono[i
]); p("Introduzca Edad: \n");
s("%d", &d.edad[i]);
d.edadsalon1[i]=d.edad[i];
p("Introduzca Nota: \n");
s("%d", &d.nota[i]);
d.notasalon1[i]=d.nota[i];
d.suma+=d.nota[i];
d.prom1=d.nota[i];
if(d.nota[i]>d.promax){
d.promax=d.nota[i];
}
if(d.nota[i]<d.promin){
d.promin=d.nota[i];
}
}}
Código C:
Ver originalp("Cuantos Alumnos hay en la Segunda Seccion: \n");
s("%d",&d.salon2);
for(i=0;i<d.salon2;i++){
p("Intruduzca Nombre: \n");
s("%s", &d.nombre[i+d.salon1]);
strcpy(d.
nombresalon2[i
],d.
nombre[i
+d.
salon1]); p("Introduzca Cedula: \n");
s("%s", &d.cedula[i+d.salon1]);
strcpy(d.
cedulasalon2[i
],d.
cedula[i
+d.
salon1]); p("Introduzca Telefono: \n");
s("%s", &d.telefono[i+d.salon1]);
strcpy(d.
telefonosalon2[i
], d.
telefono[i
+d.
salon1]); p("Introduzca Edad: \n");
s("%d", &d.edad[i+d.salon1]);
d.edadsalon2[i]=d.edad[i+d.salon1];
p("Introduzca Nota: \n");
s("%d", &d.nota[i+d.salon1]);
d.notasalon2[i]=d.nota[i+d.salon1];
d.suma+=d.nota[i+d.salon1];
d.prom2+=d.nota[i+d.salon1];
if(d.nota[i+d.salon1]>d.promax){
d.promax=d.nota[i];}
if(d.nota[i+d.salon1]<d.promin){
d.promin=d.nota[i+d.salon1];
}
}}
Código C:
Ver originalp("Cuantos Alumnos hay en la Tercera Seccion: \n");
s("%d", &d.salon3);
for(i=0;i<d.salon3;i++){
p("Intruduzca Nombre: \n");
s("%s", &d.nombre[i+d.salon1+d.salon2]);
strcpy(d.
nombresalon3[i
],d.
nombre[i
+d.
salon1+d.
salon2]); p("Introduzca Cedula: \n");
s("%s", &d.cedula[i+d.salon1+d.salon2]);
strcpy(d.
cedulasalon3[i
],d.
cedula[i
+d.
salon1+d.
salon2]); p("Introduzca Telefono: \n");
s("%s", &d.telefono[i+d.salon1+d.salon2]);
strcpy(d.
telefonosalon3[i
], d.
telefono[i
+d.
salon1+d.
salon2]); p("Introduzca Edad: \n");
s("%d", &d.edad[i+d.salon1+d.salon2]);
d.edadsalon3[i]=d.edad[i+d.salon1+d.salon2];
p("Introduzca Nota: \n");
s("%d", &d.nota[i+d.salon1+d.salon2]);
d.notasalon3[i]=d.nota[i+d.salon1+d.salon2];
d.suma+=d.nota[i+d.salon1+d.salon2];
d.prom3+=d.nota[i+d.salon1+d.salon2];
if(d.nota[i+d.salon1+d.salon2]>d.promax){
d.promax=d.nota[i+d.salon1+d.salon2];}
if(d.nota[i+d.salon1+d.salon2]<d.promin){
d.promin=d.nota[i+d.salon1+d.salon2];
}}}
Código C:
Ver originalp("Cuantos Alumnos hay en la Cuarta Seccion: \n");
s("%d", &d.salon4);
for(i=0;i<d.salon4;i++){
p("Intruduzca Nombre: \n");
s("%s", &d.nombre[i+d.salon1+d.salon2+d.salon3]);
strcpy(d.
nombresalon4[i
],d.
nombre[i
+d.
salon1+d.
salon2+d.
salon3]); p("Introduzca Cedula: \n");
s("%s", &d.cedula[i+d.salon1+d.salon2+d.salon3]);
strcpy(d.
cedulasalon4[i
],d.
cedula[i
+d.
salon1+d.
salon2+d.
salon3]); p("Introduzca Telefono: \n");
s("%s", &d.telefono[i+d.salon1+d.salon2+d.salon3]);
strcpy(d.
telefonosalon4[i
],d.
telefono[i
+d.
salon1+d.
salon2+d.
salon3]); p("Introduzca Edad: \n");
s("%d", &d.edad[i+d.salon1+d.salon2+d.salon3]);
d.edadsalon4[i]=d.edad[i+d.salon1+d.salon2+d.salon3];
p("Introduzca Nota: \n");
s("%d", &d.nota[i+d.salon1+d.salon2+d.salon3]);
d.notasalon4[i]=d.nota[i+d.salon1+d.salon2+d.salon3];
d.suma+=d.nota[i+d.salon1+d.salon2+d.salon3];
d.prom4+=d.nota[i+d.salon1+d.salon2+d.salon3];
if(d.nota[i+d.salon1+d.salon2+d.salon3]>d.promax){
d.promax=d.nota[i+d.salon1+d.salon2+d.salon3];}
if(d.nota[i+d.salon1+d.salon2+d.salon3]<d.promin){
d.promin=d.nota[i+d.salon1+d.salon2+d.salon3];
}}}
Lo dividi en partes para una mejor visualizacion, El programa Hace(O almenos quiero q haga) Pide los alumnos(Nombre, Cedula, Telefono, Edad y nota), los guarda, y Falta el menu que Dependiendo de la decision del Usuario, Mostrara una lista de Todos los alumnos, Realizara Una Busqueda o Reordenara los nombres, Ademas de mostrar el promedio acumulado.
El problema que presenta es que, Da error en la Estructura, Especificamente Nombresalon1, CedulaSalon1, edadsalon1.
Espero me Puedan ayudar Saludos!