Dev - C++ - Duda de programacion en C

 
Vista:

Duda de programacion en C

Publicado por alejandra (14 intervenciones) el 20/03/2020 01:55:32
En el problema me piden pedir los datos(nombre, edad, promedio) de tres estudiantes usando estructuras e imprimir el nombre y edad del que tiene menor promedio. Ordene los promedios pero se desordenaron nombre y edad y ya no se como imprimir estos ultimos.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include<stdio.h>
#include<stdlib.h>
 
struct alumno{
	char nombre[20];
	int edad;
	int promedio;
 
} alumnos[3];
int main(){
	int i,pmen;
	for(i=0;i<3;i++){
		fflush(stdin);
 
	printf("Digite el nombre %i: ",i+1);
	gets(alumnos[i].nombre);
 
	printf("Digite su edad: ");
	scanf("%i",&alumnos[i].edad);
 
	printf("Digite su promedio: ");
		scanf("%i",&alumnos[i].promedio);}
 
	int j,k,aux;
	for(j=0;j<3;j++){
		for(k=0;k<3;k++){
			if(alumnos[k].promedio>alumnos[k+1].promedio){
				aux=alumnos[k+1].promedio;
				alumnos[k+1].promedio=alumnos[k].promedio;
				alumnos[k].promedio=aux;
 
			}
 
 
		}
	}
 
	printf("El alumno de menor promedio tiene de nota %i ",alumnos[1].promedio);
 
 
	system("pause");
 
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 681
Bronce
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Duda de programacion en C

Publicado por dario (245 intervenciones) el 20/03/2020 03:59:31
Hola, pruebalo asi:
Las lineas que estan comentadas no funcionan para mi porque uso LInux, pero es una buena idea no usar fflush() y system("Pause").
Salu2.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <stdio.h>
#include <stdlib.h>
 
struct alumno {
    char nombre[20];
    int edad;
    int promedio;
} alumnos[3];
 
int main() {
    int i,pmen;
    int j,k,aux;
 
    for(i=0;i<3;i++) {
        //fflush(stdin);
        printf("Digite el nombre %d: ",i+1);
        fgets(alumnos[i].nombre,20,stdin);
        printf("Digite su edad: ");
        scanf("%d",&alumnos[i].edad);
        printf("Digite su promedio: ");
        scanf("%d",&alumnos[i].promedio);
        getchar();
    }
        for(j=0;j<3;j++) {
            for(k=0;k<3;k++) {
                if(alumnos[k].promedio>alumnos[k+1].promedio) {
                    aux=alumnos[k+1].promedio;
                    alumnos[k+1].promedio=alumnos[k].promedio;
                    alumnos[k].promedio=aux;
                }
            }
        }
 
        printf("El alumno de menor promedio tiene de nota %d ",alumnos[1].promedio);
        //system("pause");
 
        return 0;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Duda de programacion en C

Publicado por alejandra (14 intervenciones) el 20/03/2020 04:08:56
Me refiero a que en la parte final tambien quiero imprimir el nombre y edad del que tiene menor promedio, pero al reordenar los datos en funcion del promedio los otros tambien se desordenaron.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 681
Bronce
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Duda de programacion en C

Publicado por dario (245 intervenciones) el 20/03/2020 04:16:35
Quieres ordenar los datos y mostrarlos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 126
Ha disminuido 1 puesto en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Duda de programacion en C

Publicado por Andrés (53 intervenciones) el 20/03/2020 09:05:52
Es que solo estas intercambiando el promedio
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar