RISOLTO Ordinamento array linguaggio c

Stato
Discussione chiusa ad ulteriori risposte.

Frank2000

Nuovo Utente
26
0
Salve a tutti.
Sto implementando un programmino C nel quale utilizzo un array generato con numeri casuali e lo ordino tramite varie funzioni ognuna delle quali descrive un algoritmo di ordinamento. Utilizzo un array "copia", nel quale appunto copio il mio array, visto che lo devo ogni volta ordinare richiamando una delle funzioni, e se fosse già ordinato non avrebbe senso. Solo che l'esecuzione non mi mostra l'array ordinato, e non riesco a capire il perchè, aiutatemi per favore. Nelle foto vi mostro il main ,la funzione insertsort e quello che accade durante l'esecuzione.

screen1.png screen2.png screen3.png
 
Ultima modifica da un moderatore:

clessidra

Utente Attivo
766
272
CPU
VIA C3
GPU
Ati Rage
OS
linux - Red Hat 1.1
Forse sarebbe meglio postare il listato come testo invece di allegare una immagine di esso.
Esiste un'apposita funzione nella barra: Insert->Code .
 
Ultima modifica:

Frank2000

Nuovo Utente
26
0
ok grazie
C:
int main ()
{

int i,n;
int array[n];
int array_copia[n];

n = 10;


printf("Ecco l'array da ordinare:\n");
srand(1);
for(i=0;i< n;i++)
   {
     array[i] = rand() % 40;
     printf("%d\n",array[i]);
   }


for(i=0;i< n;i++)
   {
    array_copia[i] = array[i];
    }
 

/* ordina tramite insertsort */

printf("array ordinato tramite insertsort:\n");

insertsort(array_copia[n],n);
for(i=0; i< n; i++)
   {
      printf("%d\n",array_copia[i]);
   }
ALGORITMO INSERTSORT:
C:
void insertsort(int a[],
        int n)
{
    int valore_ins,
        i,
        j;
    
    for (i = 1;
        (i < n);
        i++)
    {
        for (valore_ins = a[i], j = i - 1;
            ((j >= 0) && (a[j] > valore_ins));
        j--)
        a[j + 1] = a[j];
        if (j + 1 != i)
               a[j + 1] = valore_ins;
    }
}
 

rodhellas

Utente Èlite
1,522
427
CPU
Ryzen 5 3600
Dissipatore
GELID Phantom
Scheda Madre
MSI B450 Gaming Plus Max
HDD
500GB m.2 + 2TB HDD
RAM
16GB Corsair LPX 3000mhz
GPU
Gigabyte GTX 960 OC
Audio
Integrata
Monitor
SyncMaster 223BW
PSU
Antec HCG-520M
Case
Meshify C
Net
Gigabit Fastweb
OS
Windows 10 64bit
Guarda come hai dichiarato insertionsort e cosa poi invece gli passi come input :)
 
Stato
Discussione chiusa ad ulteriori risposte.

Ci sono discussioni simili a riguardo, dai un'occhiata!

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!

Discussioni Simili