Would this C function work?

I keep getting these errors of "passing argument 'somenumber' of ‘somefunction’ from incompatible pointer type"

So would this function work?

*Please assume that the call would be in a main function and this were part of an actual working program.

Code:

`int checkPassReqs (double *avg1[10], double *avg2[10], char *Pass[10], int *Finals[10], int *ExtraCredit[10], double *Grade[10], int *Assignments[70], int *Midterms[20]); //declaration`

Code:

checkPassReqs (&avg1[10], &avg2[10], &Pass[10], &Finals[10], &ExtraCredit[10], &Grade[10], &Assignments[70], &Midterms[20]); //call

int checkPassReqs (double *avg1[10], double *avg2[10], char *Pass[10], int *Finals[10], int *ExtraCredit[10], double *Grade[10], int *Assignments[70], int *Midterms[20]) //definition

{

int i;

for (i=0; i<10; i++)

{

*avg1[i] = (*Assignments[(7 * i)] + *Assignments[(7 * i) + 1] + *Assignments[(7 * i) + 2] + *Assignments[(7 * i) + 3] + *Assignments[(7 * i) + 4] + *Assignments[(7 * i) + 5] + *Assignments[(7 * i) + 6])/7;

*avg2[i] = (*Midterms[(2 * i)] + *Midterms[(2 * i) + 1])/2;

}

for (i=0; i<10; i++)

{

if (*Pass[i] != 'P')

*Grade[i] = 0.0;

if (*avg1[i] < 70.0)

*Grade[i] = 0.0;

if (*avg2[i] < 60.0)

*Grade[i] = 0.0;

if (*Finals[i] < 60.0)

*Grade[i] = 0.0;

if (*Grade[i] != 0.0)

*Grade[i] = ((*avg1[i] + *avg2[i] + *Finals[i] + *ExtraCredit[i])/3);

}

return 0;

}