sera a tutti ragazzi, sono ancora inesperto e trovo non poche difficoltà a gestire i puntatori, qualcuno può aiutarmi a capire perchè la stampa del minimo non funziona?
ecco qui il codice
codice:
#include <stdio.h>
#include <malloc.h>
#include <conio.h>
int DIM=1;
void DimVet(int **vet[], int *DIM)
{
do
{
printf("\n\nInserisci la nuova dimensione del vettore(intero positivo): ",*DIM);
scanf("%d",DIM);
}while(*DIM<=0);
*vet = (int *)realloc(*vet, *DIM * sizeof(int));
printf("\nLa nuova nuova dimensione del vettore e' %d\n", *DIM);
}
void RandVet(int vet[],int DIM)
{
int i,MIN,MAX;
printf("\nDefinisci l'intervallo di estrazione degli elementi del vettore (min e max) ");
printf("\nMIN = ");scanf("%d",&MIN);
do{printf("\nMAX = ");scanf("%d",&MAX);}while(MAX<MIN);
for(i=0;i<DIM;i++)
{
vet[i]=rand()%(MAX-MIN+1)+MIN;
printf("\nVET[%d]=%d",i,vet[i]);
}
}
int PosMin(int vet[],int DIM)
{
int i,posmin=0;
for(i=1;i<DIM;i++)
if(vet[posmin]>vet[i]) posmin=i;
return posmin;
}
void Scelta(int **vet[],int *DIM)
{
DimVet(vet,DIM);
RandVet(*vet,*DIM);
printf("\nIl minimo vale %d ed occupa la posizione %d",vet[PosMin(*vet,*DIM)],PosMin(*vet,*DIM));
}
int main()
{
int *vet;
vet=malloc(sizeof(int) * DIM);
srand(time(NULL));
Scelta(&vet,&DIM);
free(vet);
vet=NULL;
return 0;
}