有以下程序: #include<stdio.h> main() FILE *fp;int a[10]=1,2,3,0,0,i;

发布时间:2021-04-11 06:11:18

单项选择题:
有以下程序:
#include<stdio.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++)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,0,0,
D) 1,2,3,0,0,1,2,3,0,0,

网友回答

答案:D
解析: 首先用函数fopen()以“wb”的方式打开文件“d2.dat”,然后调用两次fwrite函数将数组a的5个元素。依次输出到文件fp中(共10个字节),然后关闭文件。再次打开文件,使用文件指针指向文件的开头,调用fread函数从文件fp中读取这10个字节的数据到数组a中,此时数组a的内容就变为{1,2,3,0,0,1,2,3,0,0},因此最后的输出结果为“1,2,3,0,0,1,2,3,0,0”。
以上问题属网友观点,不代表本站立场,仅供参考!