I have done stuff. But its very messy, and barely anything works... Some parts are commented out cause I was experimenting with different methods. Anyway, here it is:
Code:
#include <stdio.h>
#define MAX_SIZE 50
int openFile(FILE* spGrades);
int readData(FILE* spGrades, int* stuID[MAX_SIZE], int i, int* ID);
int readHWScores(FILE* spGrades, int i, int HWaverage);


int main (void)
{
FILE* spGrades;

int* stuID[MAX_SIZE];
int HW1;
int HW2;
int HW3;
int HW4;
int HW5;
int HW6;
int HW7;
int HW8;
int HW9;
int exam1;
int exam2;
int final;
int i;
char grade;
int* ID;
int HWaverage;

openFile(spGrades);
readData(spGrades, stuID, i, ID);


/*readHWScores(spGrades, i, HWaverage);*/

return 0;
}

int openFile(FILE* spGrades)
{
if (!(spGrades = fopen ("BG_Scores.txt", "r")))
       {
        printf("\aError opening student grade file\n");
       return 100;
       }// if open input

else
       printf("Open success\n");
}

int readData(FILE* spGrades, int* stuID[MAX_SIZE], int i, int* ID)
{

/*if(spGrades){
       while(fscanf(spGrades, "%d", &ID)!=EOF);
}*/

for (i=1; i <=EOF; i+=6)
{
fscanf( spGrades,"%d\n", &ID);

stuID[i] = ID;
}
for (i=0; i<=MAX_SIZE; i++)
{
printf("%d\n", stuID);
}
return 0;


}
int readHWScores(FILE* spGrades, int i, int HWaverage)
{
int HW1;
int HW2;
int HW3;
int HW4;
int HW5;
int HW6;
int HW7;
int HW8;
int HW9;

char x;

if(spGrades){
       while(fscanf(spGrades, "%d %d %d %d %d %d %d %d %d", &HW1, &HW2, &HW3, &HW4, &HW5, &HW6, &HW7, &HW8, &HW9)!=EOF);
}
printf("%d", HW1);


for (i=3; i <=EOF; i+6)
fscanf( spGrades, "%d %d %d %d %d %d %d %d %d\n", &HW1, &HW2, &HW3, &HW4, &HW5, &HW6, &HW7, &HW8, &HW9);
HWaverage = ((HW1 + HW2 + HW3 + HW4 + HW5 + HW6 + HW7 + HW8 + HW9)/9);
printf("%d\n", HWaverage);
printf("%d\n", HW1);

for(i=2; i!=EOF; i+=6)
{
while ((x = fgetc(spGrades))!=EOF)
{
printf("%c", x);
}
}

return 0;
}
-Hope your eyes don't bleed. Thanks for the help!