Questão 3: segundoMaior
Voltar
Defina um programa que lê (usando a função scanf
) uma sequência de números inteiros terminada com o número 0 e imprime no ecrã o segundo maior elemento.
Exemplo
Resolução
void three() {
int biggest = INT_MIN, second_biggest = INT_MIN, num;
while(1) {
assert(scanf("%d",&num) == 1);
if(num == 0) break;
if(num > biggest) {
second_biggest = biggest;
biggest = num;
} else if (num > second_biggest) second_biggest = num;
}
printf("Segundo maior número: %d\n", second_biggest);
}