有以下程序 #include main() { FILE *fp;int i, a[6] = {1,2,3,4,5,6}; fp = fopen( "d2.dat", "w+" ); for (i=0; i<6; i++)fprintf( fp,

admin2020-07-28  22

问题 有以下程序
#include
main()
{  FILE  *fp;int  i, a[6] = {1,2,3,4,5,6};
fp = fopen( "d2.dat", "w+" );
for (i=0; i<6; i++)fprintf( fp, "%d\n", a );
rewind( fp );
for ( i=0; i<6; i++ )   fscanf( fp, "%d", &a[5-i] );
fclose(fp);
for ( i=0; i<6; i++ )   printf( "%d,", a );
}
程序运行后输出结果是

选项 A、1,2,3,4,5,6,
B、6,5,4,3,2,1,
C、4,5,6,1,2,3,
D、1,2,3,3,2,1,

答案B

解析 本题考查文件操作函数,fprintf和rewind函数, rewind函数将文件内部的位置指针重新指向一个流(数据流/文件)的开头,程序首先是将数组a的六个数写入d2文件中,然后又将a数组从后往前覆盖到d2中的内容,所以结果为6,5,4,3,2,1,选项B正确。
转载请注明原文地址:https://kaotiyun.com/show/6m3p777K
0

最新回复(0)