说是"student *" 类型的实参与 "int *" 类型的形参不兼容

说是"student *" 类型的实参与 "int *" 类型的形参不兼容,各位大佬可以怎么改呀? 
typedef struct student {
    int num;
    int score;
    int sciability;
    int practise;
    int committee;
}student;
student stu[100] = { 1,100,80,80,90 };
printf("请输入一个班级的总人数: ");
scanf_s("%d", &n);
for (i = 0; i < n; i++) {
    printf("请输入学生的学号,学生的绩点 ,科研能力,实践能力值,社会服务值 ");

    scanf("%d,%d,%d,%d,%d", &stu[i].num, &stu[i].score, &stu[i].sciability, &stu[i].practise, &stu[i].committee);}
stumanager(stu,n)
void stumanager(int stu[], int n){}

stumanager这个函数有问题吧,stu是结构体指针,int stu[]是int型指针,所以有问题。
int stu[]改成student stu[]
如果解决您的问题,请点赞、采纳,谢谢!

void stumanager(student stu[], int n)

你的方法函数定义有问题吧?入穿是硬的类型的,你把它改成student类型。

【以下回答由 GPT 生成】

修改建议

根据代码,我们可以发现问题出在stumanager函数的参数类型不匹配。问题的解决方法是将stumanager函数的第一个参数从int stu[]改为student stu[],以匹配student类型的数组。修改后的代码如下:

#include <stdio.h>

typedef struct student {
    int num;
    int score;
    int sciability;
    int practise;
    int committee;
} student;

void stumanager(student stu[], int n) {
    // 这里写你需要做的事情
    printf("在stumanager函数中,你可以处理学生stu数组中的数据\n");
}

int main() {
    student stu[100] = {{ 1, 100, 80, 80, 90 }};
    int n, i;

    printf("请输入一个班级的总人数:");
    scanf_s("%d", &n);

    for (i = 0; i < n; i++) {
        printf("请输入学生的学号、学生的绩点、科研能力、实践能力值、社会服务值:");
        scanf("%d,%d,%d,%d,%d", &stu[i].num, &stu[i].score, &stu[i].sciability, &stu[i].practise, &stu[i].committee);
    }

    stumanager(stu, n);

    return 0;
}

这样修改后,函数的参数类型与实参类型相匹配,编译时就不会报类型不兼容的错误了。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^