书上让用结构体存放学生姓名 年龄 分数,然后按分数排序并输出。写到定义学生信息的时候出问题了。请知道的朋友给我一点指导。谢谢了!
下面是我写的程序
#include<stdio.h>
#include<malloc.h>
struct student //定义一个结构体为student
{
char name[50];//姓名
int age;//年龄
float score;//分数
};
void inlen(int * len0) //学生数量输入函数
{
printf("请输入学生的个数:\n");
printf("人数= ");
scanf("%d",&*len0);
}
void instudent(struct student ** parr0, int len0)//学生信息输入函数
{
*parr0 = (struct student *) malloc (len0 * sizeof(struct student *)); //动态内存分配
int i;
for(i = 0; i < len0; i++ )
{
printf("请输入第%d个学生的信息\n",i+1);
printf("姓名=");
scanf("%s",parr0[i]->name);
printf("年龄=");
scanf("%d",&parr0[i]->age);
printf("分数=");
scanf("%f",&parr0[i]->score);
}
}
int main (void)//主函数
{
int len ;//定义学生数量变量
inlen(&len);//学生数量输入函数调用
struct student * parr;定义学生信息指针
instudent(&parr,len);//输入学生信息函数调用
return 0;
}