Sei sulla pagina 1di 3

1: #include <stdio.

h>
2: #define MAX_C 100
3:
4: int V [MAX_C]; // variabile globale.
5:
6: void gestioneSequenza (void);
7: int immissione (void);
8: void stampa (int);
9: int massimo (int);
10: void ordinaVettore (int);
11:
12: int main () {
13: gestioneSequenza ();
14: }
15:
16: void gestioneSequenza () {
17:
18: int dimensioneArray;
19: int scelta = -1;
20: int valoreMassimo;
21: int posizione;
22:
23:
24: while ( scelta != 0) {
25:
26: printf ("\n*****MENU'*****");
27: printf ("\n1.Immissione.\n");
28: printf ("\n2.Stampa vettore.\n");
29: printf ("\n3.Visualizza il massimo.\n");
30: printf ("\n4.Stampa posizione.\n");
31: printf ("\n5.Ordina vettore.\n");
32: printf ("\n0.Esci");
33: printf ("\n*****FINE MENU'*****");
34:
35: printf ("\nSeleziona un'opzione dal MENU': ");
36: scanf ("%d", &scelta);
37:
38: switch (scelta) {
39:
40: case 1: dimensioneArray = immissione();
41: break;
42: case 2: stampa (dimensioneArray);
43: break;
44: case 3: valoreMassimo = massimo (dimensioneArray);
45: printf ("\nIl valore massimo e' %d \n", valoreMassimo);
46: break;
47: case 4: printf ("\nInserisci posizione da stampare: ");
48: scanf ("%d", &posizione);
49: if (posizione >= 0 && posizione < dimensioneArray) {
50: printf ("\nLa poszione %d e' occupata dall'intero %d \n", posizione, V [po
51: }
52: else {
53: printf ("\nScegli una posizione esistente!\n");
54: }
55: break;
56: case 5: ordinaVettore (dimensioneArray);
57: printf ("\nVettore ordinato! Premi 2. per stampare.\n");
58: break;
59: } // case
60: } // while
61:
62: }
63:
64: int immissione () {
65:
66: int n;
67: int i;
68:
69: do {
70: printf ("\nQuanti elementi desideri inserire? ");
71: scanf ("%d", &n);
72: }
73:
74: while (n < 1 || n > MAX_C);
75:
76: for (i = 0; i < n; i++) {
77: printf ("Inserisci la posizione n. %d: ", i+1);
78: scanf ("%d", & V [i]);
79: }
80:
81: return n; // la funzione ritorna il numero di interi inseriti dall'utente e noi lo ren
82: }
83:
84: void stampa (int dimensioneArray) {
85: int i;
86:
87: for (i = 0; i < dimensioneArray; i++) {
88: printf ("\n elemento[%d]: %d", i+1, V [i]);
89: }
90: }
91:
92: int massimo (int dimensioneArray) {
93: int i;
94: int max = V [0];
95:
96: for (i = 0; i < dimensioneArray; i++) {
97: if (V [i] > max) {
98:
99: max = V [i];
100: }
101: }
102:
103: return max;
104:
105: }
106:
107: void ordinaVettore (int dimensioneArray) {
108: int i;
109: int j;
110: int aux;
111:
112: for (j = 0; j < dimensioneArray - 1; j++) {
113: for (i = 0; i < dimensioneArray - 1; i++) {
114: if (V [i] > V [i+1]) {
115: aux = V [i];
116: V [i] = V [i+1];
117: V [i+1] = aux;
118: }
119:
120: } //ciclo interno
121: } // ciclo controllore
122: }

Potrebbero piacerti anche