Из 5 номеров определить номер меньше максимального и больше всех остальных - C (СИ)

Формулировка задачи:

a,b,c,d,e вводятся с клавиатуры,нужно найти и показать номер меньше максимального и больше всех остальных. Нужно написать программу с использованием IF или SWITCH. Смог сделать только чтобы находил самый большой номер,дальше не понимаю как делать.
#include <stdio.h>
main()
{
    int a,b,c,d,e,max;
    printf("a,b,c,d,e:\n");
    scanf("%d%d%d%d%d",&a,&b,&c,&d,&e);
    if (a>b) max=a; else max=b;
    if (max>c) max=max; else max=c;
    if (max>d) max=max; else max=d;
    if (max>e) max=max; else max=e;
   
   
    printf("Max. Nomer: %d",max);
 
   
}

Код к задаче: «Из 5 номеров определить номер меньше максимального и больше всех остальных - C (СИ)»

textual
#include <stdio.h>
 
int main() {
    int a, b, c, d, e;
    int max, min, result;
   
    scanf("%d %d %d %d %d", &a, &b, &c, &d, &e);
   
    max = a;
   
    if ( max < b ) {
        max = b;
    }
    if ( max < c ) {
        max = c;
    }
    if ( max < d ) {
        max = d;
    }
    if ( max < e ) {
        max = e;
    }
   
    min = max;
   
    if ( min > a ) {
        min = a;
    }
    if ( min > b ) {
        min = b;
    }
    if ( min > c ) {
        min = c;
    }
    if ( min > d ) {
        min = d;
    }
    if ( min > e ) {
        min = e;
    }
   
    result = min;
   
    if ( result < a && a != max ) {
        result = a;
    }
    if ( result < b && b != max ) {
        result = b;
    }
    if ( result < c && c != max ) {
        result = c;
    }
    if ( result < d && d != max ) {
        result = d;
    }
    if ( result < e && e != max ) {
        result = e;
    }
    printf("%d\n", result);
   
    return 0;
}

7   голосов, оценка 4.429 из 5


СОХРАНИТЬ ССЫЛКУ