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);
}