popolare un array di interi chiamato "valori " con il set di dati , e impostare il " , numvalues " variabile per il numero di valori del set di dati . Questi potrebbero essere generati in modo casuale , lette da un file , o in modo interattivo raccolti presso l' utente . Questo esempio inizializza le variabili che sono dichiarati :
int numvalues = 20; int valori [ numvalues ] = { -3 , 2 , -2 , 4 , 5 , 4 , 2 , 5 , 4 , 5 , -1 , 2 , 3 , 4 , 7 , 4 , 2 , 0 , 7 , -3 } ;
2
impostare due variabili intere ( i e j ) da utilizzare come iteratori :
int i = 0 , j = 0;
3
iterare i vostri dati - la matrice di valori - e impostare la variabile " maxval " per il valore massimo di i tuoi dati :
maxval int = 0; for (i = 0; i Passo attraverso i dati e impostare la variabile " minval " per il valore massimo dei dati : int minval = maxval ; for (i = 0; i < numvalues ; i + + ) {if ( valori [ i] < MINVAL ) minval = valori [ i] } dichiarare una variabile " freqsize " per contenere le dimensioni del vostro allineamento di frequenza : int freqsize = maxval - minval + 1 ; dichiarare un array per contenere i conteggi di frequenza e inizializzare ogni elemento dell'array a zero: int frequenza [ freqsize ] ; for (i = 0 ; i < freqsize ; i + + ) { frequenza [ i] = 0; } C'è un elemento di un array per ogni valore possibile nei dati impostare passo attraverso ogni valore . il set di dati , l'aggiunta di uno a l'elemento di matrice frequenza corrispondente a tale valore : for (i = 0; i < numvalues ; i + + ) { int index = valori [ i] - minval ; frequenza [index ] + + } l'indice corrispondente al valore corrente è generata spostando il valore dal valore minimo . Passaggio attraverso ogni elemento dell'array frequenza. Stampare il valore attuale (calcolato spostando l' iteratore "i" per il valore minimo) . Stampare il numero di stelle ( *) corrispondente alla frequenza del valore corrente di loop da uno al valore memorizzato nella matrice di frequenza , la stampa di una singola stella ogni volta : for ( i = 1; i < = freqsize ; i + + ) { printf (" % 2d \\ t
4
5
6
7
8
Informazioni correlate
Programmazione © www.354353.com