C come ordinare un array

Programma C per ordinare un array in ordine crescente


Problema

Ordina l'array dato in ordine decrescente o crescente in base al codice che è stato scritto.

Soluzione

Un array è un gruppo di elementi di dati correlati che condividono un nome comune. Un particolare valore in un array viene identificato con l'aiuto del suo "numero di indice".

Dichiarazione di un array

La sintassi per dichiarare un array è la seguente: −

tipo di dati array_name [dimensione];

Ad esempio,

float marks [50]

Dichiara che ' marks ' è un array contenente 50 elementi float.

int number[10]

Dichiara il ' numero ' come un array che contiene un massimo di 10 costanti intere.

Ogni elemento è identificato utilizzando un "indice di array".

L'accesso agli elementi dell'array è facile utilizzando l'indice dell'array.

La logica che usiamo per ordinare gli elementi dell'array in ordine crescente è la seguente:

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

Programma

Di seguito è riportato il programma C per ordinare un array in ordine crescente −

Puoi vedere una demo dal vivo qui: Live Demo .

#include <stdio.h> void main (){ int num[20]; int i, j, a, n; printf("Inserisci il numero di elementi in un array
"); scanf("%d", &n); printf("Inserisci gli elementi
"); for (i = 0; i < n; ++i) scanf("%d", &num[i]); for (i = 0; i < n; ++i){ for (j = i + 1; j < n; ++j){ if (num[i] > num[j]){ a = num[i]; num[i] = num[j]; num[j] = a; } } } printf("Il numero in ordine crescente è:
"); for (i = 0; i < n; ++i){ printf("%d
", num[i]); } }

Output

Quando il programma di cui sopra viene eseguito, produce il seguente risultato: Inserire il

numero di elementi in un array 5 Inserire gli elementi 12 23 89 11 22 Il I numeri in ordine crescente sono: 11 12 22 23 89

Impara anche questi argomenti per migliorare la conoscenza degli array C:

Dai il via alla tua carriera

Ottieni la certificazione completando il corso

Inizia