// Read in a roster, find average grades for each line. // Michael Rothstein // 07/22/2014 #include #include const int MAXNUM_Students=100,MAXNUM_Grades=20; int grades[MAXNUM_Students][MAXNUM_Grades+1]; int num_students=0,num_grades=0; using std::cin; using std::cout; using std::endl; using std::cerr; void read_in(); void do_averages(double avgs[]); int main(){ double averages[MAXNUM_Students]; read_in(); do_averages(averages); cout << "These are the averages:\n"; for(int i=0;i> num_students >> num_grades; if ( num_students <= 0 || num_grades <= 0) { cerr << "Come on, you must be joking! Non-positive data! Yeah!\n"; exit(1); } if ( num_students > MAXNUM_Students) { cerr << "Sorry, I cannot handle that many students!\n"; exit(1); } if ( num_grades > MAXNUM_Grades ) { cerr << "Sorry, I cannot handle that many grades!\n"; exit(1); } for ( int i = 0; i < num_students; i++){ cout << "Please give me ID number and grades for student " << i+1 << ' '; for (int j=0; j <= num_grades; j++ ) cin >> grades[i][j]; } } void do_averages(double avg[]){ for(int i=0;i