16.7 请调用 fputs 函数,把 10 个字符串输出到文件中,再从此文件中读入这 10 个字符串

放在一个字符串数组中;最后把字符串数组中的字符串输出到终端屏幕,以检验

所有操作是否正确。

#include<stdio.h>

main()

{

int i;

char s[100];

FILE *fp;

 

if((fp=fopen("file.txt","w+"))==NULL)

{

printf("Cannot open this file!\n");

exit(0);

}

for(i=0;i<10;i++)

{

gets(s);

fputs(s,fp);

fprintf(fp,"\n");

}

rewind(fp);

for(i=0;i<10;i++)

{

fgets(s,100,fp);

printf("%s",s);

}

fclose(fp);

}

——————————————————————————————————————

16.8 从键盘输入 10 个浮点数,以二进制形式存入文件中。再从文件中读出数据显示在

屏幕上。修改文件中第四个数。再从文件中读出数据显示在屏幕上,以检验修改

是否正确。

 

※程序如下※

 

#include<stdio.h>

main()

{

int i;

float n,a[10],b[10];

FILE *fp;

clrscr();

printf("Enter 10 number:\n");

if((fp=fopen("file2.txt","wb+"))==NULL)

{

printf("Cannot open the file!");

exit(0);

}

for(i=0;i<10;i++)

{

scanf("%f",&n);

fwrite(&n,4,1,fp);

}

rewind(fp); /* 是文件指针指向文件开始 */

printf("The file2.txt listing\n");

for(i=0;i<10;i++)

{

fread(&a,4,1,fp); /* 从文件中读出数据存入数组 */

printf("% 7.2f ",a);

}

printf("Enter a number for modify the no.4 numeric\n");

scanf("%f",&n);

fseek(fp,3* 4L ,SEEK_SET); /* 使文件指针指向第四个数 */

fwrite(&n,4,1,fp);

rewind(fp);

for(i=0;i<10;i++)

{

fread(&b,4,1,fp);

printf("% 7.2f ",b);

}

fclose(fp);

}