有以下程序: #include <stdio.h> main() {FLLE *fp;int i=20,j=30,k,n; fp=fopen("d1.dat""w"); fprintf(fp,"%d\n",i);fprintf

admin2009-04-15  20

问题 有以下程序:    #include <stdio.h>    main()    {FLLE *fp;int i=20,j=30,k,n;    fp=fopen("d1.dat""w");    fprintf(fp,"%d\n",i);fprintf(fp,"%d\n",j);    fclose(fp);    fp=fopen("d1.dar","r");    fp=fscanf(fp,"%d%d",&k,&n);    printf("%d%d\n",k,n);    fclose(fp);    ) 程序运行后的输出结果是(  )。

选项 A、20  30
B、20  50
C、30  50
D、30  20

答案1

解析 本题首先以创建方式打开文件d1.dat,两次调用fpnntf()把i和j的值写到文件d1.dat中,文件d1.dat的内容为20<回车>30<回车>后把该文件关闭再以读的方式打开,文件位置指针指向文件头,再通过fscanf()函数从中读取两个整数到k和n中,由于格式符无间隔,因此输入数据可以用回车隔开,故输入的k值为20,n值为30。所以4个选项中A正确。
转载请注明原文地址:https://jikaoti.com/ti/EZI0FFFM
0

随机试题
最新回复(0)