问题:
[单选] 有以下程序#include<stdi0.h>
main()
{FILE*fp;int a[10]=(1,2,3,0,0),i;
fp—fopen(”d2.dat,”wb”);
fwrite(a,sizeof(int),5,fp);
fwrite(a,sizeof(int),5,fp);
fclose(fp);
fp—fopen(”d2.dat”,”rb”);
fread(a,sizeof(int),10,fp);
fclose(fp);
for(i=0;i<10;i十f-)printf("%d",a[i]);
}
程序的运行结果是( )。
A . 1,2,3,0,0,0.0,0,0,0,
B . 1,2,3,1,2,3,0,0,0,0,
C . 123,0,0,0,0,123,0,0,O,O,
D . 1,2,3,0,0,1,2,3,0,0,
参考答案:D
参考解析:
D。【解析】本题程序首先用函数fopen()以“wb”的方式开打文件“d2.dat”,然后调用两次fwrite函数将数组a的5个元素,依次输出到文件fp中,共10个字节,关闭文件。再次打开文件,使用文件指针指向文件的开头,调用head函数从文件印中读取这l0个字节的数据到数组a中。