怎么把主函数的输出部分移出主函数做成自定义函数,主函数完成调用

#include <stdio.h>
#define M 1024

struct student
int id;
char name[20]; int score,
};
main()

int i,n;
struct student s[M];
printf("input n:");scanf("%d",&n);
for(i=0;i<n;i++)

printf("input s[%d].id:",i);
scanf("%d"&s[i].id);
printf("input s[%d].id:" i);
scanf("%d" &s[i].id);
printf("input s[%d].name:",i);
scanf("%s",s[i].name);
printf("input s[%d].score:",i);
scanf("%d",&s[i].score);

for(i=0;i<n;i++)
printf("%d\t%s\t%d\n",s[i].id,s[i].name,s[i].score);

void myPrint(struct student s[],int n)
{
for(i=0;i<n;i++)
printf("%d\t%s\t%d\n",s[i].id,s[i].name,s[i].score);
}

//调用
myPrint(s,n);