C文件读写#我有1支铅笔,但是仓库里有353628支#

一道看上去不怎么难的机试题目,做了好久,做的还挺艰难的。在老弟的帮助下解决了问题,发出来纪念一下!
题目:
在一个文件里面写入“我有一只铅笔,但是仓库里有353628支”,读出刚才的文件内容,将1变为一,以此类推写入新的文件,新文件内容应为“我有一只铅笔,但是仓库里有三五三六二八支”

#include<cstdio>
#include<cstring>
using namespace std;
char change(char a){

}
int main(){
	FILE *fp=NULL,*fq;
	int n=0; 
	char buff[200],temp[200];
	fp=fopen("c:/tmp/test2.txt","w+");
	fq=fopen("E:/tmp/text5.txt","w");
	
	fprintf(fp,"我有1支铅笔,但是仓库里有353628支"); 
	fclose(fp);//本来没有这个文件,所以先创建一下
	
	fp=fopen("c:/tmp/test2.txt","r");
	fgets(buff,100,fp);
	int len=strlen(buff);
	for(int i=0;i<len;i++){
		//fgets(buff,2,fp);
	
		if(buff[i]>='1'&&buff[i]<='9'){
		switch(buff[i]){
		case '1': fputs("一",fq); break;
		case '2': fputs("二",fq); break;	
		case '3': fputs("三",fq); break;
		case '4': fputs("四",fq); break;
		case '5': fputs("五",fq); break;
		case '6': fputs("六",fq); break;
		case '7': fputs("七",fq); break;
		case '8': fputs("八",fq); break;
		case '9': fputs("九",fq); break;
		case '0': fputs("零",fq); break;
	     }
	     } 
		else 
			fprintf(fq,"%c",buff[i]);
	}
	fclose(fq) ;
} 
上一篇:刷新==给电脑加BUFF??


下一篇:Rpc双向调用(Ts)