#define classes 3
#define grades 30
#include<stdio.h>
#include<stdlib.h>
main(){
void enter_grades(int a[classes][grades]);
void disp_grades(int a[classes][grades]);
int a[classes][grades];
char ch;
for(;;)
{
do{
if(ch!='\012')
{
printf("(E)nter grades\n");
printf("(R)eport grades\n");
printf("(Q)uit \n");
}
ch=toupper(getchar());
}
while(ch!='E'&&ch!='R'&&ch!='Q');
switch(ch)
{
case 'E':
enter_grades(a);
break;
case 'R':
disp_grades(a);
break;
case 'Q':
exit(0);
}
}
}
void enter_grades(int a[][grades])
{
int t,i;
int get_grades(int);
for(t=0;t<classes;t++)
{
printf("class #%d:\n",t+1);
for(i=0;i<grades;i++)
a[t][i]=get_grades(i);
}
}
int get_grades(int num)
{
char s[80];
printf("enter grade for student # %d:\n",num+1);
gets(s);
if(atoi(s)==0) gets(s);
return(atoi(s));
}
void disp_grades(int g[][grades])
{
int t,i;
for(t=0;t<classes;t++)
{
printf("class # %d:\n",t+1);
for(i=0;i<grades;++i)
printf("grades for student #%d is %d\n:",i+1,g[t][i]);
}
}