/
Inicio :: Foros

 F.A.Q.F.A.Q.                  Conéctese para revisar sus mensajesConéctese para revisar sus mensajes   

problema basico con estructuras((ayudenme))

 
      Índice del Foro elrincondelc.com -> Trabajos de clase
Ver tema anterior :: Ver siguiente tema  
AutorMensaje
elxsoon



Registrado: 05 Nov 2007
Mensajes: 1

MensajePublicado: 24/11/2007 1:59 pm
Título: problema basico con estructuras((ayudenme))

lo que pasa es que tengo que hacer un programa que ingrese el nombre, el rut, la edad y el promedio de 100 personas (con estructuras), la cuestion es que ya los puedo ingresar, pero no puedo hacer lo otro que me piden, que es:
*ver el mayor promedio,
*numero de alumnos con promedio inferior a 40
*numero de alumnos que tienen mas de 18 y promedio sobre 50
*promedio de edsades y notas de los alumnos

si es que me pueden decir como se hace, o dar el codigo, se lo s agradeceria un monton, esto es lo que tengo, que no es mucho
Código:

#include<stdio.h>
#include<stdlib.h>
#define max 1
typedef struct
{
        char nombre[30];
        char rut[15];
        int edad[7];
        int promedio[7];
       }

alumnos;
 main()
{
alumnos f1[max];

for (int x=0;x<=max;x++)
              {

printf( "\nIntroduce El Nombre Del Alumno :" );
scanf( "%s", &f1[x].nombre);
printf("Introduce su RUT : ");
scanf( "%s", &f1[x].rut);
printf("Introduce Su Edad : ");
scanf("%s",&f1[x].edad);
printf("Introduce Su Promedio : ");
scanf("%s",&f1[x].promedio);
}

}
Volver arriba
OmarVillar



Registrado: 30 Sep 2007
Mensajes: 6

MensajePublicado: 24/11/2007 9:19 pm
Título:

Este es un programa parecido de estructuras. Ojalà te sirva.

#include <iostream.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <conio.c>

struct RegAlumno
{
char codigo[7];
char nombre[25];
char sexo;
int ex[3];
double promedio;
} Alu[20];

int dim=0;

int menu();
void opcion1();
void opcion2();
void opcion3();
void opcion4();

int main(){
int op;
do{
do{
op=menu();
}while(op<0||4<op);
switch(op){
case 1: opcion1();break;
case 2: opcion2();break;
case 3: opcion3();break;
case 4: opcion4();break;
case 0:exit(0);
}
}
while(op!=0);
printf("\t\t");system("PAUSE");
return 0;
}

int menu(){
int x;
system("cls");
printf("\t\tMENU\n\n");
printf("\t\t[1] Ingresar\n");
printf("\t\t[2] Listar\n");
printf("\t\t[3] Reportar\n");
printf("\t\t[4] Consultar\n");
printf("\t\t[0] Fin\n\n");
printf("\t\tOPCION: ");
cin>>x;
return x;
}

void opcion1(){
system("cls");
int i;
printf("\t\tIngresar el numero de alumnos ");
cin>>dim;
if(0<dim&&dim<=20){
for(i=0;i<dim;i++){
printf("\n\t\tALUMNO %d\n",i+1);
printf("\t\tIngrese codigo: ");
gets(Alu[i].codigo);
printf("\t\tIngrese nombre: ");
gets(Alu[i].nombre);
printf("\t\tIngrese sexo: ");
cin>>Alu[i].sexo;//printf("\n");
printf("\t\tIngrese nota ep:");
cin>>Alu[i].ex[0];//printf("\n");
printf("\t\tIngrese nota ef:");
cin>>Alu[i].ex[1];//printf("\n");
printf("\t\tIngrese nota pp:");
cin>>Alu[i].ex[2];//printf("\n");
Alu[i].promedio=(float)(Alu[i].ex[0]+Alu[i].ex[1]+Alu[i].ex[2])/3;
}
}
else{
printf("\t\tNumero fuera de rango\n");
getchar();
dim=0;
}
}

void opcion2(){
system("cls");
if(dim==0){
printf("\t\tTodavia no ha ingresado datos\n");
}
else{
int i;
printf("\tCODIGO\tNOMBRE\t\tSEXO\tEP\tEF\tPP\tPROM\n");
for(i=0;i<dim;i++){
printf("\t%s\t%s\t%c\t%d\t%d\t%d\t%5.2f\n",Alu[i].codigo,Alu[i].nombre,Alu[i].sexo,Alu[i].ex[0],Alu[i].ex[1],Alu[i].ex[2],Alu[i].promedio);
}
}
getchar();
}

void opcion3(){
system("cls");
if(dim==0){
printf("\t\tTodavia no ha ingresado datos\n");
}
else{
opcion2();
int hapro=0,hdesap=0,mapro=0,mdesap=0,i;
for(i=0;i<dim;i++){
if(Alu[i].sexo=='m'||Alu[i].sexo=='M'){
if(Alu[i].promedio>=11){
hapro++;
}
else{
hdesap++;
}
}
else{
if(Alu[i].promedio>=11){
mapro++;
}
else{
mdesap++;
}
}
}
printf("\t\tAlumnos\t\tNumero\tPorcentaje\n");
printf("\t\tH. aprobados\t%d\t%5.2f%%\n",hapro,(float)hapro*100/dim);
printf("\t\tH. desaprobados\t%d\t%5.2f%%\n",hdesap,(float)hdesap*100/dim);
printf("\t\tM. aprobadas\t%d\t%5.2f%%\n",mapro,(float)mapro*100/dim);
printf("\t\tM. desaprobadas\t%d\t%5.2f%%\n",mdesap,(float)mdesap*100/dim);
}
getchar();
}

void opcion4(){
system("cls");
if(dim==0){
printf("\t\tTodavia no ha ingresado datos\n");
}
else{
char cod[7];
int i,pos=-1;
printf("\t\tIngrese el codigo a buscar ");
gets(cod);
for(i=0;i<dim;i++){
if(strcmp(cod,Alu[i].codigo)==0){
pos=i;
}
}
if(pos==-1){
printf("\t\tEl codigo no ha sido encontrado\n");
}
else{
printf("\t\tCodigo:\t%s\n",Alu[pos].codigo);
printf("\t\tNombre:\t%s\n",Alu[pos].nombre);
printf("\t\tSexo:\t%c\n",Alu[pos].sexo);
printf("\t\tE P:\t%d\n",Alu[pos].ex[0]);
printf("\t\tE F:\t%d\n",Alu[pos].ex[1]);
printf("\t\tP P:\t%d\n",Alu[pos].ex[2]);
printf("\t\tprom:\t%5.2f\n",Alu[pos].promedio);
}
}
getchar();
}
_________________
Necesito saber cómo poner el fondo de pantalla de colores, porque el color negro es muy común.
Volver arriba
      Índice del Foro elrincondelc.com -> Trabajos de clase
Página 1 de 1Todas las horas están en GMT - 8 Horas

 
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

(c) ElRincondelC.com

Un proyecto de UrlanHeat.com