Ir para conteúdo
Fórum Script Brasil
  • 0

Duvida: Gerar numeros, colocar em um vetor e ordenar em c


carolb.

Pergunta

Escreva em linguagem C um programa que gere n valores inteiros no intervalo entre [1,50] e armazene os valores em uma variável vetor. Desenvolva o algoritmo para ordenar no próprio vetor os valores digitados. A ordenação deve ser crescente. A ordenação deve ser feita no próprio vetor, sem utilizar um vetor auxiliar.

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main ()
{
int i,n,j,aux;
int vet[n];
printf("entre com a quantidade de numeros: ");
scanf("%d",&n);
srand(time(NULL));
for(i=0;i<n;i++)
{
    vet[i]=rand()%50+1;

}
printf("o vetor e:  ");
for (i=0;i<n;i++)
printf("%d ", vet[i]);

for(i=0;i<n-1;i++)
{
  for (i=0;i<n-1;i++)
   {
    if (vet [i]> vet[i+1])
    {
        aux=vet[i];
        vet[i]=vet[i+1];
        vet[i+1]=aux;
    }
   }
}

  printf ("\n");
  printf ("ordenado e: ");
  for (i=0;i<n;i++)
  {
     printf("%d ", vet[i]);
  }
return 0;
}

Consigo gerar e colocar no vetor, porem não ta dando pra ordenar, qual é meu erro? :/

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Opa, acho que é isso:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
  int main (){

  int i,n,j,aux,vet[n];

  
  printf("entre com a quantidade de numeros: ");
  scanf("%d",&n);
  srand(time(NULL));

  for(i=0;i<n;i++){
    vet[i]=rand()%50+1;}


  printf("\no vetor e:");
  for (i=0;i<n;i++){
       printf("%d ", vet[i]);}


     for(i=0;i<n;i++){
        for (j=i+1;j<n;j++){                                      
                                                                      
          if (vet[i]> vet[j]){                                   
                                                            
            aux=vet[j];                                        
            vet[j]=vet[i];
            vet[i]=aux;}
        }
    } 



  printf ("\n");
  printf ("\nordenado e:");
  for (i=0;i<n;i++){
       printf("%d ", vet[i]);}
  
  printf("\n\n");
  system("pause");
  return 0;
  
}

Editado por Binder
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...