#include<stdio.h>
#define N 30
FILE* fp;
struct student/*学生信息*/
{
char num[10];/*学号*/
char name[20];/*姓名*/
char zhuanye[20];/*专业*/
int class1;/*班级*/
char kecheng[20];/*课程*/
double math;/*数学分数*/
double english;/*英语分数*/
double chinese;/*语文分数*/
};
int main()
{
int i,j;
struct student t[N],*pp;
pp=t;
FILE* fp = fopen("stu-list.txt","r");
for(j=0;j<N;j++,pp++)
{
fscanf(fp,"%s%s%s%d%s%lf%lf%lf",pp->num,pp->name,pp->zhuanye,&pp->class1,pp->kecheng,&pp->math,&pp->english,&pp->chinese);
printf("学号:%s 姓名:%s 专业:%s 班级:%d 课程:%s\n 数学:%lf 英语:%lf 语文:%lf\n",t[j].num,t[j].name,t[j].zhuanye,t[j].class1,t[j].kecheng,t[j].math,t[j].english,t[j].chinese);
}
fclose(fp);
}
报错的错误信息也发一下吧。
gcc编译运行没问题。txt文件保存成gbk格式
FIlE open下加一句
if (!fp) return -1;