c语言,请问这里哪错了??为什么总是error。。

2025-05-18 05:33:19
推荐回答(3个)
回答1:

int code;
code = fwrite(&stu[i],sizeof(stu[i]),N,fp);
看看错误码

N是不是应该是1 啊

回答2:

#include
#include
#define N 1
struct student
{
float score[3];
float aver;
};
int main()
{
FILE*fp;
char filename[10];
int i,j;
struct student stu[N],temp;
printf("please enter the filename:\n");
scanf("%s",filename);
printf("please enter datas:\n");
for(i=0;i scanf("%f%f%f",&stu[i].score[0],&stu[i].score[1],&stu[i].score[2]);
if((fp=fopen(filename,"w+"))==NULL)
{
printf("can not open the file\n");
exit(0);
}
for(i=0;i {
stu[i].aver=(stu[i].score[0]+stu[i].score[1]+stu[i].score[2])/3;
}
for(i=0;i {
for(j=1+i;j {
if(stu[i].score temp=stu[j];stu[j]=stu[j+1];stu[j+i]=temp;
}
}
for(i=0;i printf("%f\n",stu[i].aver);
if(fwrite(&stu[i],sizeof(stu[i]),N,fp)!=1)
printf("error!");
fclose(fp);
putchar(10);
return 0;
}

回答3:

网上有的,找一下