请大大们帮忙看看我的程序错的哪里??(1个学生奖学金的系统)
输入n个学生的学号和成绩,如果超过平均分20%为1等奖学金,超过平均分15%为2等奖学金,超过平均分10%为3等奖学金,其他人没有奖学金#include<iostream.h>
#define N 50;
void input(int a[N][3],int &n); //输入函数
void comp(int a[N][3],int n); //比较函数
void disp(int a[N][3],int n); //输出函数
main()
{
int n;
int a[N][3];
input(a,n);
comp(a,n);
disp(a,n);
}
void input(int a[][3],int &n)
{
cout<<"输入学生人数:"<<endl;
cin>>n;
for(int i=0; i<n; i++)
{
cout<<"输入学生学号:"<<endl;
cin>>a[i][0];
cout<<"输入学生成绩:"<<endl;
cin>>a[i][1];
}
}
void comp(int a[][3],int n)
{
int i;
double average;
int s=0;
for(i=0; i<n; i++)
s+=a[i][1];
average=s/n;
for(i=0; i<n; i++)
{
if(a[i][1]>average*1.2)
a[i][2]=1;
else if(a[i][1]>average*1.15)
a[i][2]=2;
else if(a[i][1]>average*1.1)
a[i][2]=3;
else
a[i][2]=0;
}
}
void disp(int a[][3],int n)
{
for(int i=0; i<n; i++)
{
if(a[i][2]!=0)
cout<<a[i][0]<<"号同学"<<a[i][1]<<"分"<<a[i][2]<<"等奖学金"<<endl;
}
}