Dados três valores A, B e C, construa um programa em C, que imprima os valores de forma descendente (do maior para o menor).

Passo 1

O enunciado pede um programa em linguagem C que, dados três valores A, B e C, imprima-os em ordem decrescente (do maior para o menor). O conteúdo principal envolve leitura de variáveis, uso de estruturas condicionais e impressão formatada.

Passo 2

Vamos declarar três variáveis para armazenar os valores de entrada e usar scanf para lê-las. Aqui usarei int, mas poderia ser float ou outro tipo numérico:
int A, B, C;
printf("Digite tres valores inteiros: ");
scanf("%d %d %d", &A, &B, &C);

Passo 3

Para ordenar, primeiro identificamos o maior valor entre A, B e C. Podemos usar comparações aninhadas:
int maior;
if (A >= B && A >= C) {
 maior = A;
} else if (B >= A && B >= C) {
 maior = B;
} else {
 maior = C;
}

Passo 4

Em seguida, identificamos o menor valor com lógica semelhante:
int menor;
if (A <= B && A <= C) {
 menor = A;
} else if (B <= A && B <= C) {
 menor = B;
} else {
 menor = C;
}

Passo 5

O valor do meio é aquele que sobra da soma dos três:
\text{meio} = A + B + C - \text{maior} - \text{menor}

Passo 6

Por fim, imprimimos na ordem decrescente: maior, meio, menor.
int meio = A + B + C - maior - menor;
printf("Ordem decrescente: %d %d %d
", maior, meio, menor);

Resposta

#include <stdio.h>

int main(void) {
 int A, B, C;
 printf("Digite tres valores inteiros: ");
 scanf("%d %d %d", &A, &B, &C);

 int maior, menor;
 if (A >= B && A >= C) {
 maior = A;
 } else if (B >= A && B >= C) {
 maior = B;
 } else {
 maior = C;
 }

 if (A <= B && A <= C) {
 menor = A;
 } else if (B <= A && B <= C) {
 menor = B;
 } else {
 menor = C;
 }

 int meio = A + B + C - maior - menor;
 printf("Ordem decrescente: %d %d %d
", maior, meio, menor);

 return 0;
}

Exercícios relacionados