Oppure

Loading
11/04/14 13:13
Non si sta "allargando" nessuno ... sono solo fatti ...

M è un intero così come hai scritto in

int M=0;

?
11/04/14 14:31
perillitommaso
L'ho modificato dopo, ho modificato M che è passato da int a float e anche temp che è passato da int a float, però fino ad adesso, ogni volta che ho provato la media è risultata sempre 0. ( ho inserito numeri del genere: 4 6 8 )
aaa
11/04/14 14:32
Ma l'input con scanf lo fai con %f e non con %d ?

Proponi nuovamente tutto il codice modificato ...
11/04/14 14:44
perillitommaso
Problema risolto :) quando visualizzavo c'era un %d e non un %f .. errore di distrazione ahah :asd:
Ultima modifica effettuata da perillitommaso 11/04/14 14:49
aaa
11/04/14 15:19
Purtroppo la distrazione è il peggior nemico della programmazione ...
12/04/14 16:44
perillitommaso
Postato originariamente da nessuno:


Già, basta che metti una virgola al posto sbagliato, e non ti funziona più niente!
aaa
12/04/14 18:17
perillitommaso
Ho provato a vedere un pò per l'ordinamento delle stringhe, allora:

void ordinamento(char *citta){
     for(i=1;i<=6;i++){
     if(citta[i][0]>citta[i+1][0]){
     scambio(citta);                              
     }                  
                       
     }
     
     return;
     }

void scambio(char *citta){
     char stringapp [15];

     
     strcpy(stringapp,citta[i+1]);
     strcpy(citta[i+1],citta[i]);
     strcpy(citta[i],stringapp);
     
     return;
     }




Secondo voi? Quando vado ad incrementare l'indice, non si sporca? Ho bisogno anche di una aria di lavoro per memorizzare l'indice?
Ultima modifica effettuata da perillitommaso 12/04/14 18:23
aaa
12/04/14 22:26
Non usare una funzione scambio, non in quel modo almeno, dato che l'indice i non è disponibile nella funzione scambio. Scrivi direttamente nella funzione ordinamento.

E soprattutto controlla i valori minimi e massimi di i. Perché inizi da 1 e termini al 6 ? Considera che

i varierà da 1 a 6 e

i+1 varierà da 2 a 7