有没有懂得,问一下这个结构体的问题怎么解决呀
/*1.某学校要开发一个新生注册系统,新生的信息包括:序号、姓 名、性别、高考准考证号,高考总成绩,现输入录取学生的人数
(小于 5 人),请输入学生的信息,将信息写入文件 exm.dat 中,
并将信息读取出来。
提示:
1) 定义一个结构体
2) 动态内存分配
3) 输入学生信息
4) 选用 fwrite() fread() */
#include<stdio.h>
#include<stdlib.h>
struct stu_info
{ char xm[10];
char xb[10];
char zh[10];
float zcj[10];
};
typedef struct stu_info STU;
main()
{int n,i;
STU *p,*q;
printf("请输入人数",n);
scanf("%d",&n);
p=(*STU)malloc(n*sizeof(STU));
q=(*STU)malloc(n*sizeof(STU));
if(p==NULL)
{
printf("动态内从分配失败");
exit(0);
}
for(i=0;i<n;i++)
{
fflush(stdin);
printf("请输入该学生的姓名",i);
gets((p+i)->xm);
printf("请输入该学生的性别",i);
gets((p+i)->xb);
fflush(stdin);
printf("请输入该学生的准考证号",i);
gets((p+i)->zh);
printf("请输入高考总成绩",i);
scanf("%f",&(p+i)->zcj);
fflush(stdin);
}
return 0
};
--------------------Configuration: c_1 - Win32 Debug--------------------
Compiling...
c_1.cpp
E:\计算机程序设计\练习\c_1.cpp(24) : error C2275: 'STU' : illegal use of this type as an expression
E:\计算机程序设计\练习\c_1.cpp(18) : see declaration of 'STU'
E:\计算机程序设计\练习\c_1.cpp(24) : error C2146: syntax error : missing ';' before identifier 'malloc'
E:\计算机程序设计\练习\c_1.cpp(25) : error C2275: 'STU' : illegal use of this type as an expression
E:\计算机程序设计\练习\c_1.cpp(18) : see declaration of 'STU'
E:\计算机程序设计\练习\c_1.cpp(25) : error C2146: syntax error : missing ';' before identifier 'malloc'
E:\计算机程序设计\练习\c_1.cpp(63) : error C2143: syntax error : missing ';' before '}'
执行 cl.exe 时出错.
c_1.exe - 1 error(s), 0 warning(s)
小白上路,这个结构体的问题,有没有会的,指点一下