Ir ao conteúdo

ScreenBlack

Membro Pleno
  • Posts

    1.062
  • Cadastrado em

  • Última visita

Tudo que ScreenBlack postou

  1. Bom, antes de fechar o tópico, eu gostaria de colocar o código corrigido. Primeiramente essa rotina só funcionará caso os números sejam cadastrados em ordem crescente, podendo assim, fazer a inversão dos números em apenas uma execução do laço "for". Além disso, a troca deve ser feita no sentido descrescente, de maneira mais direta, conforme código abaixo: #include <stdio.h> #include <stdlib.h> #define quant 5 struct num { int num_inteiro; }; int main (void) { int i =0; int val[quant]; int aux; int ordenador =1; printf("\t----------------------------------------------------------------\t\n"); printf("\tPrograma que le 100 numeros e os imprime em ordem decrescente:\t\n"); printf("\t----------------------------------------------------------------\t\n"); printf("\n\tEntre com 100 numeros:\n"); for ( i = 0; i < quant; i++ ) { printf("\n\t%d\xc2\xa7 valor:", i+1); scanf("%d", &val[i]); } printf("\nEstes s\xc3\xa3o os valores lidos em ordem decrescente:\n"); while ( ordenador <= quant ) { for ( i = quant-1; i > 0; i-- ) { if ( val[i] > val[i-1] ) { aux = val[i]; val[i] = val[i-1]; val[i-1] = aux ; } } ordenador = ordenador + 1; } for ( i = 0; i < quant; i++ ) printf("\nval[%d]: %d\n", i+1, val[i]); return 0; } Caso a inserção seja de maneira aleatória, precisará de um processo de ordenação do tipo bubblesort, heapsort e outros.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!