Ciao a tutti, devo fare un programma che manipoli un vettore facendolo passare per due funzioni la prima "float mediaVett (int v[],int m)" deve dare la media dei valori inseriti, la seconda
"int superanoLimite (int v[],int n, float limite)" il numero di valori che superano un valore limite dato, ho scritto questo ma mi da due warning, uno per funzione dove dice
"warning: passing argument 1 of 'superanoLimite' makes pointer from integer without a cast"
il casting penso di averlo fatto correttamente... se è quello il problema...
#include<stdio.h>
float mediaVett (int v[],int m);
int superanoLimite (int v[],int n, float limite);
int main ()
{
int vett[20],n,i,lim;
float media,vlim;
n=20;
vlim=20;
printf("inserire i valori del vettore\n");
i=0;
for (i=0;i<n;i++)
{
scanf("%d",&vett[i]);
}
media = mediaVett(vett[20],n);
lim = superanoLimite(vett[20],n,vlim);
printf("la media dei valori del vettore e': %f\n",media);
printf("%d valori superano il valore limite %f",lim,vlim);
return 0;
}
float mediaVett (int v[],int m)
{
int i;
float result;
result=0;
for(i=0;i<m;i++)
{
result = result+ (v[i]);
}
result = result/m;
return result;
}
int superanoLimite (int v[],int n, float limite)
{
int i,cont;
i=0;
cont=0;
for(i=0;i<n;i++)
{
if((float)v[i]>limite)
{
cont=cont+1;
}
}
return cont;
}
Grazie mille, ZanoBot.