C语言经典习题24
文件操作习题
一 编程删除从C盘home文件夹下data.txt文本文件中所读取字符串中指定的字符,该指定字符由键盘输入,并将修改后的字符串以追加方式写入到文本文件C:\home\data.txt中。
#include<stdio.h>
main()
{ char s[100],ch;
int i;
FILE *fp;
fp=fopen("c:\\home\\data.txt","r"); //打开文件
fgets(s,100,fp);//读文件
fclose(fp);
scanf("%c",&ch);//指定字符输入
for(i=0;s[i]!='\0';)//删除指定字符
if(s[i]==ch)
strcpy(s+i,s+i+1);
else i++;
fp=fopen("c:\\home\\data.txt","a");
fputs(s,fp);//字符串写入文件
fclose(fp);//关闭文件
}
二 在主函数中输入两个整数x和y,将从F盘根目录下的file.txt文件读入的字符串,从第x个字符开始,删除y个连续的字符,并将修改后的字符串以追加方式写入file.txt文件。
#include <stdio.h>
main()
{ char s[100];
int i,x,y;
FILE *p;
scanf("%d%d",&x,&y);
p=fopen("d:\\file.txt","r");/ //打开文件
fgets(s,100,p);//读文件
puts(s);
strcpy(s+x-1,s+x+y-1);//删除指定长度字符
puts(s);
fclose(p);
p=fopen("d:\\file.txt","a");
fprintf(p,"\n%s",s);
fclose(p); //关闭文件
}
三 编程统计C盘home文件夹下文本文件“file.txt”中字符‘+’和‘-’分别出现的次数,并将统计的结果写入到同个文件夹中的文本文件“res.txt”中。
#include <stdio.h>
main()
{ FILE *fp;int n=0,m=0; char ch;
fp=fopen("c:\\home\\file.txt","r");// 打开文件
while(!feof(fp))
{ ch=fgetc(fp);
if(ch=='+') m++;
else if(ch=='-') n++;
}
fclose(fp); // 关闭文件
fp=fopen("c:\\home\\res.txt","w");//再次打开文件
fprintf(fp,"一共有%d个+和%d个-。\n",m,n);
fclose(fp);
}
原文地址:https://blog.csdn.net/2402_83395518/article/details/140659483
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!