Hola,
estoy dándole vueltas y vueltas al ejercicio y no se el motivo por el cual no me ordena bien los números:
Escribir un programa que lea tres números enteros
en tres variables n1, n2, n3 reasigne los valores de las variables para
que n1 sea la más pequeña, y n3 la más grande Finalmente que escriba los
tres valores ordenados.
Código:
#include <stdio.h>
#include <conio.h> //getch
main()
{
int n1, n2, n3;
printf("introduce numero n1 \n");
scanf("%d",&n1);
printf("introduce numero n2 \n");
scanf("%d",&n2);
printf("introduce numero n3 \n");
scanf("%d",&n3);
if(n1>n2){
if(n2>n3){
n1=n3;n2=n2;n3=n1;//n1>n2 n2>n3
}else if(n1>n3){
n1=n2;n2=n3;n3=n1;//n1>n2 n2<n3 n1>n3
}else{
n1=n2;n2=n1;n3=n3;//n1>n2 n2<n3 n1<n3
}
}else if(n1>n3){
n1=n3;n2=n1;n2=n2;//n1<n2 n1>n3
}else if(n2>n3){
n1=n1;n2=n3;n3=n2;//n1<n2 n1<n3 n2>n3
}else{
n1=n1;n2=n2;n3=n3;//n1<n2 n1<n3 n2<n3
}
printf("El orden es el siguiente: \n\t %d \t %d \t %d", n1,n2,n3 );
getch();
}
Muchas gracias.
ost.