结构体,要求输入学生的信息,并且求出成绩平均分

#include<stdio.h>
struct student
{ char name[20];
int number;
char place;
int score;
}stu[4];
int main()
{ int i;
float j,m;j=0;
for(i=0;i<4;i++)
{scanf("%s,%d,%s,%d",stu[i].name,stu[i].number,stu[i].place,stu[i].score);
j+=stu[i].score;}
m=j/4;
printf("%d",m);
return 0;
}
没有报错,最后我输入,结果是0 不知道哪里的问题

img

(1)结构体里:char place;,你在输入时用%s,应该用%c,或者将place改成字符数组;
(2)scanf里。除了字符串,其他要加&;
(3)输出m,m定义为float,输出应该用%f。
你先改改这些

修改处见注释,供参考:

#include<stdio.h>
struct student
{
    char name[20];
    int number;
    char place[20]; //char place;
    int score;
}stu[4];
int main()
{
    int i;
    float j,m;j=0;
    for(i=0;i<4;i++)
    {
        scanf("%s %d %s %d",stu[i].name,&stu[i].number,stu[i].place,&stu[i].score);
        //scanf("%s,%d,%s,%d",stu[i].name,stu[i].number,stu[i].place,stu[i].score);
        j+=stu[i].score;
    }
    m=j/4;
    printf("%f",m);
    //printf("%d",m);
    return 0;
}