一道结构体的题( ˃̶̤́ ꒳ ˂̶̤̀ )

img

代码如下:

#include <stdio.h>
#include <stdlib.h>
struct st
{
    int id;
    char name[20];
    float avg;
};

void ent(struct st* s,int n)
{
    int i;
    for (i=0;i<n;i++)
    {
        printf("请输入第%d个学生的信息:",i+1);
        scanf("%d %s %f",&s[i].id,s[i].name,&s[i].avg);
    }
}

void outs(struct st *s,int n)
{
    int i;
    for (i=0;i<n;i++)
    {
        printf("%d %s %.2f\n",s[i].id,s[i].name,s[i].avg);
    }
}

int main()
{
    struct st* s =0;
    int n;
    printf("请输入n的值:");
    scanf("%d",&n);
    s = (struct st*)malloc(n * sizeof(st));
    ent(s,n);
    outs(s,n);
    free(s);
    s = 0;
    return 0;
}