展开全部
这是错误代码!double为8字节浮点数,而写文件fwrite函数中的第二个参数是4,这只是一个double型浮点数的一半,根本一个数都没有写完;且,只写一次就关闭文件了;还有fp=fopen("exam.dat","wb")后面少了分号。所以说是错误代码。出题者的意图似乎让选C,那么应该如下写才对:
int main(void){
FILE *fp;
double x[4]={-12.1,12.2,-12,3,12.4};
int i;
fp=fopen("exam.dat","wb");//这里要加分号
for(i=0;i<4;i++){
fwrite(&x[i],8,1,fp);//()中的4要改8
//fclose(fp);//这一句要挪到下面的}后面
}
fclose(fp);//这一句要挪到这里来
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询