一个简单的c程序 上面的指针传参有关问题

一个简单的c程序 上面的指针传参问题
#include <stdio.h>
#include <stdlib.h>
#define N 3
struct STU
{
int num;
char name[10];
int score[3];
} ;
struct STU *students[N];
void input(struct STU*);
void output(struct STU *);
void quit();
int main()
{
while (1)
{
int choice;
printf("please choose the canzuo:\n");
printf("1.enter\t\t2.output\t3.quit\n");
scanf("%d",&choice);
switch (choice)
{
case 1:input(* students);break;
case 2:output(* students);break;
case 3:quit();break;
default:
printf("erro");break;
}
}
system("pause");
return 0;
}
void input(struct STU* students)
{
int i=0,j=0;
for (i=0;i<N;i++)
{
printf("the %d stu is:\n",i+1);
printf("stu_no:\n");
scanf("%d",&students[i].num);
printf("name:\n");
scanf("%s",&students[i].name);
printf("******************the score*****************\n");
for (j=0;j<3;j++)
{
scanf ("%d",&students[i].score[j]);
}
}
}
void output(struct STU * students)
{
int i=0;
printf("stu info as follows:\n");
for (i=0;i<N;i++)
{
printf("stu_no:%d\tname:%s\n",students[i].num,students[i].name);
printf("******************the score*****************\n");
printf("%d\t%d\t%d\n",students[i].score[0],students[i].score[1],students[i].score[2]);
}
}
void quit()
{
exit (0);
}

我这一块不太懂,希望大家赐教!
------解决思路----------------------
这不是函数传参的问题, 而是你把 结构体数组 定义为了 结构体指针数组,指针数组有另外的用法。
该3个地方
1:struct STU students[N];
2:case 1:input(students);break;
3:case 2:output(students);break;
------解决思路----------------------
指针和数组:http://blog.****.net/zhangxiangdavaid/article/details/38085743