有以下程序 #include <stdio.h> main() {FILE *fp; int a[10]={1,2,3},i,n; fp=fo......求解释?

有以下程序 #include <stdio.h> main() {FILE *fp; int a[10]={1,2,3},i,n; fp=fopen(“dl.dat”,”w”); for(i=0;i<3;i++) fprintf(fp,”%d”,a[i]); fprintf(fp,”\n”); fclose(fp); fp=fopen(“dl.dat”,”r”); fscanf(fp,”%d”,&n); fclose(fp); printf(“%d\n”,n); } 程序的运行结果是()
A)12300 B) 123 C) 1 D) 321

#include <stdio.h>
void main()
{FILE *fp;
int a[10]={1,2,3},i,n;
fp=fopen("dl.dat","w");//打开这个文件以写的方式
for(i=0;i<3;i++) fprintf(fp,"%d",a[i]);//把123依次写入这个文件
fprintf(fp,"\n"); fclose(fp);//把这个文件写入磁盘,并且关闭文件
fp=fopen("dl.dat","r");//再次打开文件
fscanf(fp,"%d",&n);//从文件依次读出123
fclose(fp);
printf("%d\n",n);//输出结果123
}
这就是我的解释,希望你能够明白,很荣幸为您解答问题,祝您开心,生活愉快~~~
温馨提示:内容为网友见解,仅供参考
第1个回答  2020-03-14
应该有人选c,注意在读入数据时将123默认为一个数字,所以是123,而不是1
第2个回答  2018-06-14
学长 你考上了吗
第3个回答  2011-03-22
没见过

...main() {FILE *fp; int a[10]={1,2,3},i,n; fp=fo...求解释?_百度...
include <stdio.h> void main(){FILE *fp;int a[10]={1,2,3},i,n;fp=fopen("dl.dat","w");\/\/打开这个文件以写的方式 for(i=0;i<3;i++) fprintf(fp,"%d",a[i]);\/\/把123依次写入这个文件 fprintf(fp,"\\n"); fclose(fp);\/\/把这个文件写入磁盘,并且关闭文件 fp=fopen("...

...#include <stdio.h> main( ) { FILE *fp; int i,k=0,n=0; fp=fo...
本题中首先定义了一个文件指针fp,然后通过函数fopen以“w”的方式打开文件“d1.dat”,直接通过一个for循环,每循环一次调用函数fprintf将i的值写进fp所指的文件中,该循环共循环3次,循环完后fp所指文件的内容为123。然后通过fclose函数关闭fp所指文件。接着通过fscanf函数将fp所指文件的内容读出并赋值...

...这两次是覆盖还是连接上成一串#include<stdio.h> 非洲菊
这两次是连接上成一串,不过你程序也有问题,修改后如下: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);fclose(fp);fp=fopen("d2.dat","rb");fread(a,sizeof(int),10,...

#include <stdio.h> main() { FILE *fp; int i; float x; fp=fope...
include "stdafx.h"

#include <stdio.h> #include <stdlib.h> int main() {
include <stdio.h>#include <stdlib.h>int main(){ FILE *fp; if((fp=fopen("H:\\\\c.txt","w"))==NULL) { \/\/--少了这个括号!! printf("文件没有打开!\\n");system("pause");exit(0); } fclose(fp); system("pause"); return; } ...

C语言,如何用循环读入多个文本文件
include"stdlib.h"int main(void){ FILE *fp;char filename[]="a.txt";int i;void *p[3];long filelen;for(i=0;i<3;i++){ fp=fopen(filename,"rb");if(!fp){printf("\\"%s\\"文件打开失败\\n",filename);continue;} fseek(fp,0,2);filelen=ftell(fp);fseek(fp,0,0);p[i]...

...是( )。 #include <stdio.h> main() { FILE *fp; char str[][10]=...
B 第一次打开 test.txt 时向文件里输入了 first,第二次重新打开 test.txt ,然后输入 second,由于是从文件开头开始写,所以第一次写入的数据被覆盖,最终只有 second。

#include<stdio.h> main() { FILE *fp;int i,a[4]={1,2,3,4},b; f...
fseek(fp,-2*sizepf(int),SEEK_END);函数是离文件尾部有8个字节的位置,那个数字4不也占用字节嘛,所以是3,你是用区分一下指针运算,我猜你肯定是把它当作指针的那个样子了,指针它是本来就是在首地址上,然后加减操作,而这个是离文件指针的字节数,仔细品品 ...

下面一段程序调用了TXT,请问程序正确吗?正确的话为什么不输出TXT里...
fopen 函数对应的读文件的函数为fread和fscanf,其中fread一般用于读二进制文件,fsanf一般用于读TXT,但读写格式为%f。例如:include "stdio.h"main(){ FILE *fp;int i;float a[10]={1,2,3,4,5,6,7,8,9,0},b[10];fp=fopen("C:\\\\SData.txt","wt");for(i=0;i<10;i++){ fp...

#include <stdio.h>
include <stdio.h> main(){ long n,a[100];FILE *fp,*fopen ();fp=fopen("a:\\myf2.out","w");if (fp==NULL)exit (0);scanf ("%ld",&n);k=fun(n,a);fprintf (fp,"my exam number is:%s","1234567890");} int (fun(long n,long a);{ } ...

相似回答