Aiuto per programma con bubbleSort

di il
6 risposte

Aiuto per programma con bubbleSort

Ciao ragazzi, ho un problema, non riesco a capire dove ho sbagliato in questo programma, quello che devo fare è: compilare un vettore e ordinarlo con la funzione bubbleSort.
Non riesco a capire perchè dopo aver compilato il vettore, il programma non va avanti,
codice:

#include<stdio.h>
void bubbleSort(int vet[], int tanti)
{
	int x,y,min;
	int temp;
	for(x=0;x<tanti-1;x--)
	{
		for(y=0;y<tanti-1;y++)
			if(vet[y]>vet[y+1])
			{
				temp=vet[y];
				vet[y]=vet[y+1];
				vet[y+1]=temp;
			}	
	}
}
int main()
{
	int dim,i;
	int vet[dim];
	printf("inserisci la dimensione del vettore: ");
	scanf("%d",&dim);
	for(i=0;i<dim;i++)
	{
		printf("inserisci un numero:");
		scanf("%d",&vet[i]);
	}
	for(i=0;i<dim;i++)
	{
		printf(" %d",vet[i]);
	}
	bubbleSort(&vet[dim],dim);
	for(i=0;i<dim;i++)
	{
		printf(" %d",vet[i]);
	}
	
}

6 Risposte

  • Re: Aiuto per programma con bubbleSort

    Usa i tag code per postare codice nel forum altrimenti non si capisce nulla.
  • Re: Aiuto per programma con bubbleSort

    oregon ha scritto:


    Usa i tag code per postare codice nel forum altrimenti non si capisce nulla.
    si, scusami, è il mio primo post
  • Re: Aiuto per programma con bubbleSort

    Questo

    int vet[dim];

    va DOPO che chiedi il valore di dim, altrimenti come fa il compilatore a sapere quanto spazio allocare?

    La chiamata deve essere

    bubbleSort(vet,dim);

    e nella for hai sbagliato a decrementare, deve essere

    for(x=0;x<tanti-1;x++)
  • Re: Aiuto per programma con bubbleSort

    oregon ha scritto:


    Questo

    int vet[dim];

    va DOPO che chiedi il valore di dim, altrimenti come fa il compilatore a sapere quanto spazio allocare?

    La chiamata deve essere

    bubbleSort(vet,dim);

    e nella for hai sbagliato a decrementare, deve essere

    for(x=0;x<tanti-1;x++)
    Grazie, un ultima cosa, come faccio a visualizzare il vettore un rigo a capo?
  • Re: Aiuto per programma con bubbleSort

    Printf("\n");
  • Re: Aiuto per programma con bubbleSort

    oregon ha scritto:


    Printf("\n");
    Grazie dell'aiuto!
Devi accedere o registrarti per scrivere nel forum
6 risposte