有以下程序: #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

admin2020-11-27  25

问题 有以下程序:
#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);
felose(fp);
fp=fopen("d2.dat","rb");
fread(a,sizeof(int),10,fp);
felose(fp);
for(i=0;i<10;i++)
printf("%d,",a);
}
程序运行后的输出结果是(    )。

选项 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

解析 本题考查文件操作函数,两次fwrite后,fp文件中已经写入1,2,3,0,0,1,2,3,0,0然后将文件fp中的内容重新写人数组a中,最后输出a为1,2,3,0,0,1,2,3,0,0,所以选项D正确。
转载请注明原文地址:https://kaotiyun.com/show/q43p777K
0

最新回复(0)