Buscando respuestas a la programación en lenguaje C
#include
#include
#include
#include
usando
namespace
std;
//﹌﹌﹌﹌﹌﹌﹌﹌﹌Clase de estudiante﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
clase
Estudiante
{
público:
char
nombre[20];
char
Clase[20];
char
Id[20];
int
Cnum;
//Puntuación del curso C
int
Mnum;
//Puntuación del curso de Matemáticas
int
Enum;
//Puntuación del curso de inglés
int
Gnum;
// Deportes
int
suma;
//Puntuación total
int
ave;
//Puntuación media
Estudiante
*
Siguiente;
void
Entrada()
{
cout<<"\t\tPor favor ingrese el nombre del estudiante: ";
cin>>nombre;
cout< <"\t\tPor favor ingrese la clase del estudiante:";
cin>>Clase;
cout<<"\t\tPor favor ingrese el número de estudiante del estudiante: "; p>
cin>>Id;
cout<<"\t\tIngrese la puntuación de C++: ";
cin>>Cnum;
cout<<"\t\tPor favor ingrese las calificaciones del curso de matemáticas:";
cin>>Mnum;
cout<<"\t\t Por favor ingrese las calificaciones para el curso de inglés: ";
cin>>Enum;
cout<<"\t\tIngrese las calificaciones para el curso de japonés: ";
cin>>Gnum;
sum=Cnum+Mnum+Enum+Gnum;
ave=(Cnum+Mnum+Enum+Gnum)/4;
}
void
ReadFile(istream
&
in)
{
in>>nombre>>Clase>>Id>>Cnum>>Mnum>>Enum>>Gnum>>ave>>suma;
}
void
Mostrar()
{
cout<<"Nombre:"< ;Cnum< <<"Matemáticas:"< } }; //﹌﹌﹌﹌﹌﹌﹌﹌﹌Clase de masaje estudiantil﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌ clase Masaje estudiantil { público: Masaje estudiantil(); ~Masaje estudiantil(); nulo MostrarMenú(); void Buscar(); void Guardar(); void ModifyItem(); void RemoveItem(); void Intercambiar (Estudiante *,Estudiante *); void Ordenar(); int ListCount(); void Display() { for(Estudiante * p=Head->Siguiente;p!=End;p=p->Siguiente) p->Mostrar(); cout< <"¡Ingrese cualquier carácter! Continuar..."; getch(); } void AddItem () p> { Fin->Entrada(); Fin->Siguiente=nuevo Estudiante; Fin =Fin->Siguiente; cout<<"¡Agregado exitosamente!"< cout<<"¡Ingrese cualquier carácter! Continuar..."; getch(); } privado: Estudiante * Cabeza,* Fin; ifstream entrada; ofstream salida; Estudiante *FindItem(char * nombre) { para( Estudiante * p=Head;p->Siguiente!=End;p=p->Siguiente) if(!strcmp(p-> Siguiente->nombre, nombre))return p; return NULL; } Estudiante *FindID(char * Id) { para(Estudiante * p=Cabeza;p->Siguiente!=Fin;p= p->Siguiente) if(!strcmp(p->Siguiente->Id,Id))return p; return NULL; } Estudiante *FindCLASS(char * Clase) { for(Estudiante * p=Cabeza;p->Siguiente!=Fin;p=p->Siguiente ) if(!strcmp(p->Siguiente->Clase,Clase))return p; return NULL ; } }Grado; //﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌Constructor﹌﹌﹌﹌﹌﹌﹌﹌ ﹌ ﹌﹌﹌ Masaje de estudiante::Masaje de estudiante() { Cabeza=nuevo Estudiante; Encabezado->Siguiente=nuevo Estudiante; End=Encabezado->Siguiente; in.open("sort.txt"); if(!in) cout<<"Este es un sistema nuevo y no hay información del estudiante. Introdúzcala primero. "< else { mientras(!in.eof()) { Fin->ReadFile(in); if(Fin->nombre[0]=='\0')break; Fin->Siguiente=nuevo p> p> Estudiante; Fin=Fin->Siguiente; } in.close(); cout <<"\t\t¡Lea la información del estudiante exitosamente!"< } } //﹌﹌﹌﹌﹌﹌﹌ ﹌﹌﹌﹌﹌Destructor﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌ Masaje para estudiantes::~Masaje para estudiantes() { Guardar () ; for(Estudiante * temp;Cabeza->Siguiente!=Fin;) { temp=Cabeza->Siguiente; Cabeza->Siguiente=Cabeza->Siguiente->Siguiente; eliminar temp; } eliminar Encabezado,Fin; } //﹌﹌﹌﹌﹌﹌﹌﹌ ﹌﹌﹌﹌Menú﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌ void Masaje para estudiantes::MostrarMenú() { cout<<"〓〓〓〓〓〓〓〓〓〓 ☆ 学 生 成 Rendimiento Gestión Gestión Sistema Sistema ☆ 〓〓〓〓〓〓〓〓〓〓"< cout<<"〓〓〓〓〓〓〓★★★★★ ★ ★★★★★★ ★★★★★〓〓〓〓〓〓〓"< cout<<"〓〓〓〓〓〓〓〓〓 ★ ☆ 1. Incrementar el rendimiento de los estudiantes ☆ ★〓〓〓〓〓〓〓〓〓"< cout<<"〓〓〓〓〓〓〓〓★ ☆ 2. Mostrar puntuaciones de los estudiantes ☆ ★〓〓〓〓〓〓〓〓〓"< cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 3. Ordenar resultados estadísticos ☆ ★〓〓〓〓〓〓〓〓〓"< cout <<"〓〓〓〓〓〓〓〓〓★ ☆ 4. Encuentra las puntuaciones de los estudiantes ☆ ★ 〓 〓〓〓〓〓〓〓"< cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 5. Eliminar puntuaciones de estudiantes ☆ ★〓〓〓〓〓〓〓〓〓"< cout<<"〓〓〓〓 〓〓 〓〓〓★ ☆ 6. Modificar la información del estudiante ☆ ★〓〓〓〓〓〓〓〓 〓" < cout<<"〓〓〓〓〓〓〓〓★★ ☆ 0. Salga del sistema de forma segura p> ☆ ★〓〓〓〓〓〓〓〓〓"< cout<<"\n\t\t\n\t\ tSeleccione: "; } //﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌Buscar función﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌ void Masaje para estudiantes::Buscar() { char nombre[20] ,Id[10],Clase[20]; int x; Estudiante * p> p=NULL; cout<<"\n\t\t************************ ** *******\n"; cout<<"\t\t※ 1 Buscar por nombre del estudiante\n\t\t※ 2. Buscar por número de estudiante\n\t\t※ 3. Buscar por clase de estudiante"; cout<<"\n\ t\t*. ***********************************\nPor favor seleccione: "; cin> >x; cambiar(x) { caso 1:{cout<<"\t\t Por favor ingrese el nombre del estudiante que desea encontrar: ";cin>>name; if(p=FindItem(name)) { p- > Siguiente->Mostrar(); cout<<"¡Ingrese cualquier carácter! Continuar..."; getch(); } else { cout< < "\t\t¡No se encontró ningún estudiante con ese nombre! "<<'\n'< cout<<"¡Ingresa cualquier carácter! Continuar..."; getch(); } }romper; caso 2 : { cout<<"\t\tPor favor ingrese el número de identificación del estudiante que está buscando: ";cin>>Id; if( p=FindID(Id)) { p->Siguiente->Mostrar(); cout<<"Ingrese cualquier carácter ! Continuar..."; getch(); } else { cout< < "\t\t¡No se encontró ningún estudiante con este número de estudiante! "<<'\n'< cout<<"¡Ingresa cualquier carácter! Continuar..."; getch(); } }romper; caso 3 :{cout<<"\t\tPor favor ingrese la clase del estudiante que desea encontrar: ";cin>>Clase; if(p=FindCLASS(Class)) { p->Siguiente->Mostrar(); cout<<"¡Ingrese cualquier carácter! Continuar..."; getch(); } else { cout< < "\t\t¡No se encontraron estudiantes en esta clase! "<<'\n'< cout<<"¡Ingrese cualquier carácter! Continuar..."; getch(); } }break; } } //﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌Modificar información﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌ void Studentmassage::ModifyItem() //Modificar información { char ID[20]; Estudiante * p=NULL; cout<<"\t\tPor favor ingrese El ID de estudiante de la persona a modificar: ";cin>>ID; if(p=FindID(ID)) { cout< <" \t\tSe ha encontrado información del estudiante, ¡ingrese nueva información!"< p->Siguiente->Input(); cout<<"Modificar ¡Éxito! "< cout<<"¡Ingrese cualquier carácter! Continuar..."; getch(); } else { cout<<"\t\t¡No encontrado!"< cout<<"¡Ingresa cualquier carácter! Continuar..."; getch(); } } //﹌﹌﹌﹌﹌﹌﹌﹌ ﹌ ﹌﹌﹌Eliminar información﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌ void Studentmassage::RemoveItem() // p > Eliminar información { char ID[20]; Estudiante * p=NULL,*temp=NULL; cout<<"\t\tIngrese el ID del estudiante que desea eliminar:";cin>>ID; if(p=FindID(ID)) { temp=p->Siguiente; p-> Siguiente=p- >Siguiente->Siguiente; eliminar temp; cout<<"\t\t¡Eliminar correctamente!"< cout<<"¡Ingrese cualquier carácter! Continuar..."; getch(); } else { cout<<"\t\t¡No encontrado!"< cout<<"¡Ingresa cualquier carácter! Continuar..."; getch(); } } //﹌﹌﹌﹌﹌﹌﹌﹌ ﹌ ﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌ void Masaje de estudiante::Intercambio(Estudiante *p1, Estudiante *p2) { Estudiante *temp=new Estudiante; strcpy(temp->nombre,p1->nombre); strcpy(temp->Id,p1->Id); temp-> Cnum=p1->Cnum; temp->Mnum=p1->Mnum; temp->Enum=p1->Enum; temp->sum=p1->suma; strcpy(p1->nombre,p2->nombre); strcpy(p1->Id,p2->Id); p1->Cnum=p2->Cnum ; p1->Mnum=p2->Mnum; p1->Enum=p2->Enum; p1->suma=p2-> suma; strcpy(p2->nombre,temp->nombre); strcpy(p2->Id,temp->Id); p2 ->Cnum=temp->Cnum; p2->Mnum=temp->Mnum; p2->Enum=temp->Enum; p2->suma=temp->suma; } //﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌ ﹌ int Studentmassage::ListCount()//Cuenta el número total actual de registros { if(! Cabeza) return 0; int n=0; para (Estudiante * p=Head->Siguiente;p!=End;p=p->Siguiente) { n++; } regresar n; } //﹌﹌﹌﹌﹌ ﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌ void Studentmassage::Sort()//Ordenar los estudiantes actuales { cout <<"Clasificación..."< Estudiante *p= NULL, *p1=NULL,*k=NULL; int n=MasajeEstudiante::ListCount(); if(n<2) return; for(p=Head->Siguiente;p!=End;p=p->Siguiente) for(k=p->Siguiente; k!=Fin;k=k->Siguiente) { if(p->suma>k->suma) { Masaje estudiantil::Swap(p,k); } } cout <<" Clasificación completada ! "< getch(); return; } //﹌﹌﹌﹌﹌﹌﹌﹌ ﹌﹌﹌Función de guardar﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌ void Masaje para estudiantes::Guardar() { out.open("sort.txt"); for(Estudiante *p=Head->Next;p!=End;p=p-> norte text) salida< < out.close(); } void código() //Contraseña { char s1[ 20]="123",s2[20]; cout<<"Por favor, introduzca la contraseña:"; while(cin>>s2) { if(!strcmp(s1,s2)) { Grade.ModifyItem();break; } else cout<<"La contraseña que ingresó es incorrecta, vuelva a ingresarla:"; } } p > //﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌Función principal﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌ int main() { int x,i=0; bool quit=false; p> cout<<"\t\t§§§§§§§§§§§§§§§§§§§§§§§§§"< for(i=0;i<3;i++) cout<<"\t\t◎\t\t\t\t\t\t ◎" < cout<<"\t\t◎★★★★ Bienvenido al sistema de gestión del desempeño estudiantil ★ ★★★◎" < for(i=0;i<3;i++) cout<<"\t\t◎\t\t\t \t\t\ t ◎"< cout<<"\t\t§§§§§§§§§§§§§§§§ §§§§§ §§§§§\n"< cout<<"Por favor presione cualquier tecla para comenzar..."; getch() ; mientras(!quit) { sistema("cls"); Calificación.ShowMenu(); p> cin> >x; interruptor(x) { caso 0:cout<<" ★★★★Gracias Utilice ★★★★"< caso 1:Grade.AddItem();break; caso 2:Grade.Display();romper; caso 3:Grade.Sort();romper; caso 4:Grade.Find();romper; caso 5:Grade.RemoveItem();romper; caso 6:code();romper; } } return 0; } Lo cambié un poco y debería funcionar~ Um~~ ¿Tienes que escribir en C~? ¿No se puede usar C++?