![]()
disperazione!![]()
domani ho la verifica sui puntatori e le funzioni ricorsive, ho questo programma da consegnare (su cui studiare) ma non funziona.. anzi, mi da errore alla riga 39 (riguardante la funzione ricerca)..
qualcuno riesce ad aiutarmi?
ho provato a mettere l'asterisco anche a a dati (essendo il vettore), ma da ancora più errori..![]()
![]()
Grazie mille a tutti..codice:#include <stdio.h> int insVett(int *dati,int lung){ int i,num; for(i=0;i<lung;i++){ printf("Inserisci il numero %d di %d: ",i+1,lung); scanf("%d",& num); *dati++=num; } } //ordina i valori in modo Crescente int ordinaVett(int *dati,int lung){ int scambio=1,i,app; while(scambio){ scambio=0; for(i=0;i<lung-1;i++){ if(*(dati+i)>*(dati+i+1)){ app=*(dati+i); *(dati+i)=*(dati+i+1); *(dati+i+1)=app; scambio=1; } } } } //visualizza vettore int visVett(int *dati,int lung){ int i; for(i=0;i<lung;i++){ printf("[ %d ]",*dati); *dati++; } printf("\n"); } //effettua la ricerca int ricerca(dati,dato,*indiceSup,*indiceInf){ if(*indicieInf>*indiceSup){ return 1; }else{ *indiceMedio=*indiceSup-(*indiceInf)/2; if(*(dati+indiceMedio)>dato){ ricerca(dati,dato,*indiceInf-1,*indiceSup); }else{ if(*(dati+indiceMedio)<dato){ ricerca(dati,dato,*indiceInf+1,*indiceSup); }else{ return 1; } } } } int main(){ int lung1=0,val,test=-1,scelta; printf("Inserisci il numero di valori da inserire: "); scanf("%d",&lung1); int vett1[lung1]; printf("Inserisci il numero da cercare: "); scanf("%d",&val); insVett(vett1,lung1); ordinaVett(vett1,lung1); visVett(vett1,lung1); ricerca(vett1,val); getchar(); }![]()

Rispondi quotando