Imaginsystems


Tecniche di Programmazione - Codici Sorgenti - News Informatiche
Archivio Posts
Anno 2014

Anno 2013

Anno 2012
Statistiche
  • Views Home Page: 73.755
  • Views Posts: 551.401
  • Views Gallerie: 0
  • n° Posts: 210
  • n° Commenti: 224

C - Dati N valori interi forniti in ordine qualunque,stampare in uscita l'elenco in ordine crescente

C - Dati N valori interi forniti in ordine qualunque, stampare in uscita l'elenco dei valori dati in ordine crescente.

Oss. N sia una costante (per esempio 5)

- Selection sort, o ordinamento per minimi successivi:
- Ad ogni passo seleziona il minimo nel vettore e lo pone nella prima posizione, richiamandosi ed escludendo dal vettore il primo elemento.


#include <stdio.h>

#define MAX 5
#define TRUE 1
#define FALSE 0

void Scambio(int a[], int i, int posizione);

int main(int argc, char *argv[]){

int a[MAX];

       
for (int i = 1; i <= MAX; i++){
                printf
("Inserisci il valore a[%d] ",i);
                scanf
("%d",&a[i]);
       
}
        printf
("\n");
       
int posizione, min,j,i;

       
for(i = 1 ; i < MAX ; i++){
                posizione
= i;
                min
= a[i];
                       
for( j = i+1; j <= MAX ; j++){
                               
if( a[j] <= min) {
                                         min
= a[j];
                                       
Scambio(a, j,posizione);}
                       
}
       
}

       
for (int i = 1; i <= MAX; i++){
        printf
("Array Ordinato  a[%d]  = %d\n ",i,a[i]);
       
}

return 0;
}

void Scambio(int a[], int i, int posizione){
       
int scambio;
        scambio
= a[posizione];
        a
[posizione] = a[i];
        a
[i] = scambio;
}
Categoria: C / C++
sabato, 09 giu 2012 Ore. 16.13
Ora e Data
Mappa
Blogs Amici
    Copyright © 2002-2007 - Blogs 2.0
    dotNetHell.it | Home Page Blogs
    ASP.NET 2.0 Windows 2003