C语言程序设计习题参考答案第二版杜友福 下载本文

fp=fopen(\ if(fp==NULL)

{ printf(\

return; } i=0;

while(i<10&&!feof(fp))

{ printf(\ i++; }

}

编程题2:从键盘读入10个浮点数,以二进制形式存入文件中。再从文件中读出数据显示在屏幕上。修改文件中第四个数据。再从文件中读出数据显示在屏幕上,以验证修改的正确性。

#include \

void ctfb(FILE *fp) {

int i; float x;

for(i=0;i<10;i++) { scanf(\

fwrite(&x,sizeof(float),1,fp); } }

void fbtc(FILE *fp) {

float x;

rewind (fp);

fread(&x,sizeof(float),1,fp); while(!feof(fp)) { printf(\

fread(&x,sizeof(float),1,fp); } }

void updata(FILE *fp,int n,float x)

{ fseek(fp,(long)(n-1)*sizeof(float),0); fwrite(&x,sizeof(float),1,fp);

} main() { FILE *fp;

int n=4; float x;

if((fp=fopen(\ { printf(\ exit(0); }

}

ctfb(fp); fbtc(fp); scanf(%updata(fp,n,x); fbtc(fp); fclose(fp);