能不能写个程序,
随机产生一个>1而且<9999的数字,打开文件aa.txt,找到5678替换成随机产生的数字。
哦!
程我修改了一下:
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <conio.h> int main() { FILE *FpSource; int TestOk=0; long fpi=0; char ch; char cha='a'; char chb='a'; char chc='a'; char chd='a'; int A,B,C,D;
srand(time(NULL)); A=random(9); B=random(9); C=random(9); D=random(9);
clrscr();
if((FpSource=fopen("f:\\turboc2\\1.txt","r+"))==NULL) { printf("Can not open the file!"); exit(0); } rewind(FpSource); while(((ch=fgetc(FpSource))!=EOF)&&(TestOk==0)) { cha=chb; chb=chc; chc=chd; chd=ch; fpi++; if((cha=='5')&&(chb=='6')&&(chc=='7')&&(chd=='8')) TestOk=1; } if(TestOk) { printf("\nOK%d",fpi); cha=A;chb=B;chc=C;chd=D; fseek(FpSource,fpi+1,0); fputc(cha+48,FpSource); fputc(chb+48,FpSource); fputc(chc+48,FpSource); fputc(chd+48,FpSource); } printf("\n%d%d%d%d",A,B,C,D); fclose(FpSource); getch(); }
可以实现。
不过我不明白 fseek(FpSource,fpi+1,0); 这一句中为什么是fpi+1而不是fpi-4 ????