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]); //declarationCode: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; }