C语言经典习题24

avatar
作者
筋斗云
阅读量:0

文件操作习题

一 编程删除从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); }  

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!