se mi dite dove ho sbagliato...io ho inizializzato i. e anche il bubble sort non l'ho mai utilizzato...qualcuno mi sa far vedere come si fa???? e cosa devo mettere tra le parentesi...evitate risposte del tipo se mi dite dove ho sbagliato...io ho inizializzato i. e anche il bubble sort non l'ho mai utilizzato...qualcuno mi sa far vedere come si fa???? e cosa devo mettere tra le parentesi...evitate risposte del tipo "pappa pronta" grazie
"Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares
E perché mai dovremmo evitarle? Invece dovresti rispondere ...
Ci riprovo .... se ti dicono che "non hai inizializzato n" cosa pensi di fare per rimediare?
P.S. Un chiarimento così capirai se continuare la discussione ... qui non si propone un esercizio e gli altri te lo scrivono, chiaro? Qui si ottengono suggerimenti con cui "impari" a risolvere il problema da solo.
No MP tecnici (non rispondo nemmeno!), usa il forum.
mi da conflicting type for BubbleSort...dove sta il problema???codice:#include <stdio.h> #include <stdlib.h> #define MAX 100 typedef struct { char luogo[20]; float valore; }rilevazione; void BubbleSort(float valore, int n); int main() { int i=0, n=0, j=0; rilevazione*dato=NULL; dato=(rilevazione*)malloc(MAX*sizeof(rilevazione)); while(i<MAX) { printf("inserisci luogo %d: ", i+1); scanf("%s", dato[i].luogo); printf("inserisci valore %d: ", i+1); scanf("%f", &dato[i].valore); if(strcmp(dato[i].luogo, "end")==0) break; i++; } n=i; printf("il numero di misure e' %d", n); scanf("%d", &n); BubbleSort(dato.valore, n); for(j=0; j<n; j++) { printf("valore: %d luogo: %s", dato[i].valore, dato[i].luogo); } return 0; } void BubbleSort(float valore[], int n) { int i=0, temp=0, j=0; int scambi=1; while(i<=n && scambi!=0) { scambi=0; j=n; while(j>=i) { if(valore[j]>valore[j+1]) { temp=valore[j]; valore[j]=valore[j+1]; valore[j+1]=temp; scambi=1; } j=j-1; } i=i+1; } return; }
La funzione è dichiarata come
void BubbleSort(float valore, int n)
ma poi hai scritto
void BubbleSort(float valore[], int n)
SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
Di questo libro e degli altri (blog personale di recensioni libri) | NO M.P. TECNICI
Certo che non li ascolti i consigli e continui di testa tua:codice:#include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct { char luogo[30]; float valore; }rilevazioni; void sort(rilevazioni *a, int size) { int i, j; rilevazioni temp; for(i = size - 1; i > 0; i--) { for(j = 0; j < i; j++) { if(a[j].valore < a[j+1].valore) { temp = a[j]; a[j] = a[j+1]; a[j+1] = temp; } } } } int main() { rilevazioni *dati=NULL; int size = 0; char luogo[30]; while(1) { printf("Inserisci luogo: "); scanf("%s", luogo); if(strcmp(luogo, "end")==0) break; dati = (rilevazioni *)realloc(dati, sizeof(rilevazioni)*(size+1)); strcpy(dati[size].luogo, luogo); printf("Inserisci tasso d'inquinamento: "); scanf("%f", &dati[size].valore); size += 1; } sort(dati, size); int i; printf("\n\n"); for(i = 0; i < size; i++) { if(dati[i].valore < 33) break; printf("Luogo: %s\t\tTasso d'Inquinamento: %f\n", dati[i].luogo, dati[i].valore); } free(dati); return 0; }
"Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares