1. Learn how to indent code -> SourceForge.net: Indentation - cpwiki
driver.c and grade.c look awful. stats.c looks like it was written by someone else.
2. Pick meaningful variable names. Just calling something ARRAY doesn't say anything at all, when it's obvious from the rest of the declaration that it is an array.
So perhaps
Code:
char studentNames[ARRAY_SIZE][NAME_SIZE] = {"aaa","bbb","ccc","ddd","eee","fff","ggg","hhh","iii","jjj"};
int studentGrade[ARRAY_SIZE]= {9,20,30,40,50,60,70,80,90,100};
Here's how you declare / call a function with a 2D array parameter.
Code:
void foo ( char studentNames[ARRAY_SIZE][NAME_SIZE] ) {
printf("%s\n", studentNames[0] );
}
int main ( ) {
char studentNames[ARRAY_SIZE][NAME_SIZE] = ....
foo( studentNames );
}
Notice how the function parameter declaration is a copy/paste of the variable declaration you want to pass into it later.
> fgets(array_grade[0],10,stdin);
Grades are integers, so you need to fgets() into a temporary char buffer, then convert that buffer into an integer (see sscanf or strtol)