为什么循环一次 就停了?

问题遇到的现象和发生背景

请问这个程序运行之后为什么循环一次(输入一个学生的信息)就停了?

遇到的现象和发生背景,请写出第一个错误信息

系统没有报错,就是不能连续循环

用代码块功能插入代码,请勿粘贴截图。 不用代码块回答率下降 50%
#include 
#include
using namespace std;
struct Score{
    int math;
    int English;
    int Chinese;
    int art;
    int add(){
        return math+English+Chinese+art;
    }
    int average() {
        return (math + English + Chinese + art) / 4;
    }
};
struct Student{
    int id;
    char name[10];
    Score sc;
    
};
void input(Student *s,int n){
        for(int i=0;i1<<"个学生信息:"<>s[i].id>>s[i].name>>s[i].sc.math>>s[i].sc.Chinese
        >>s[i].sc.art>>s[i].sc.English;
        cout<void disp(Student*p,int n){
    for(int i=0;ivoid sort(Student*a,int n){
    for(int i=0;i-1;i++){     
        for(int j=i+1;jif(a[j].sc.add()>a[i].sc.add())
        swap(a[j],a[i]);
             
        }         
    }
}
int main(void){
    int n;
    cout<<"输入学生人数:";
    cin>>n;
Student*stu ;
input(stu,n);
disp(stu,n)    ;
sort(stu,n);
return 0;
}

运行结果及详细报错内容

img

我的解答思路和尝试过的方法,不写自己思路的,回答率下降 60%
我想要达到的结果,如果你需要快速回答,请尝试 “付费悬赏”

stu你没分配空间啊