请看一下这个函数为什么不能完整执行

void input()
{
int i, j, m;
printf("请输入需要统计的学员数:");
scanf_s("%d", &m);
system("cls");
for (i = 0; i < m; i++)
{
printf("请输入学生学号:");
scanf_s("%s", &stu[i].num);
getchar();
printf("请输入学生姓名:");
scanf_s("%s", &stu[i].name);
getchar();
printf("请输入学生平时成绩:");
scanf_s("%f", &stu[i].normalscore);
getchar();
printf("请输入学生期末成绩:");
scanf_s("%f", &stu[i].finalscore);
getchar();
}
}
问一下为什么这个函数执行过程中只执行了一个printf和scanf就结束?

修改如下,供参考:

void input()
{
    int i, j, m;
    printf("请输入需要统计的学员数:");
    scanf_s("%d", &m);
    system("cls");
    for (i = 0; i < m; i++)
    {
        printf("请输入学生学号:");
        scanf_s("%s", stu[i].num, sizeof(stu[i].num)); //scanf_s("%s", &stu[i].num);
        getchar();
        printf("请输入学生姓名:");
        scanf_s("%s", stu[i].name, sizeof(stu[i].name));  //scanf_s("%s", &stu[i].name);
        getchar();
        printf("请输入学生平时成绩:");
        scanf_s("%f", &stu[i].normalscore);
        getchar();
        printf("请输入学生期末成绩:");
        scanf_s("%f", &stu[i].finalscore);
        getchar();
    }
}

有完整代码吗,是不是应该是int input()
{

return 0;
}