有以下程序: #include<stdio.h> main() {FILE*fp;int a[10]={1,2,3},i,n; fp=fopen("d1.dat","w"); for(i=0;i<3;i++)fprintf(fp,"%d",a[i]); f

admin2016-09-03  32

问题 有以下程序:
#include<stdio.h>
main()
{FILE*fp;int a[10]={1,2,3},i,n;
fp=fopen("d1.dat","w");
for(i=0;i<3;i++)fprintf(fp,"%d",a);
fprintf(fp,"\n");
fclose(rp);
fp=fopen("d1.dat","r");
fscanf(fp,"%d",&n);
fclose(fp);
printf("%d\n",n);
}
程序的运行结果是(  )。

选项 A、123
B、12300
C、1
D、321

答案A

解析 首先使用fopen函数以可方式打开文件d1.dat,返回文件指针fP,然后在for循环通过fprintf函数调用fp指针,将数组a的3个了元素写入文件d1.dat中,最后再写入换行符\n,关闭文件,此时文件中的内容:“123\n”,然后调用fopen函数以只渎方式打开d1.dat.返回文件指针fp指向文件的开头,再调fscanf函数从文件中读入一个整数:123,(遇到第一个非数值字符结束),关闭文件后输出读入的整数n,结果为:123,答案为A。
转载请注明原文地址:https://kaotiyun.com/show/8wID777K
0

相关试题推荐
最新回复(0)