请教~关于c语言文件的一道选择题

来源:百度知道 编辑:UC知道 时间:2024/07/01 07:02:46
有以下程序
#include <stdio.h>
main( )
{ FILE *fp; int i,k=0,n=0;
fp=fopen("d1.dat","w");
for(i=1;i<4;i++) fprintf(fp,"%d",i);
fclose(fp);
fp=fopen("d1.dat","r");
fscanf(fp,"%d%d",&k,&n); printf("%d %d\n",k,n);
fclose(fp);
} 执行后输出结果是()
A)1 2 B)123 0 C)1 23 D) 0 0

答案选B,为什么??为什么不是选A??

/* d1.dat上就是123,第二次没读到就是0。改成这样就A */
#include <stdio.h>
main( )
{ FILE *fp; int i,k=0,n=0;
fp=fopen("d1.dat","w");
for(i=1;i<4;i++) fprintf(fp,"%d ",i);/*加个空格*/
fclose(fp);
fp=fopen("d1.dat","r");
fscanf(fp,"%d%d",&k,&n); printf("%d %d\n",k,n);
fclose(fp);

}