69,371
社区成员
发帖
与我相关
我的任务
分享
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void countchars(int &i, int &j, int &k, FILE *fp) {
while (!feof(fp)) {
fseek(fp, 1L, 1);
i++;
if (i>=200) {
j++;
i=0;
if (j>=200) {
k++;
j=0;
}
}
}
}
char * createname(int k) {
char *p;
int m=0;
p=(char *)malloc(k*8*sizeof(char));
while (m <k) {
p[m]=char(m/100);
p[m+1]=char((m%100)/10);
p[m+2]=char(m%10);
p[m+3]='.';
p[m+4]=p[m+6]='t';
p[m+5]='x';
m=m+1;
}
return p;
}
int main() {
char filename[20];
char filename1[7];
char buffer[40];
FILE *fp, *fp1;
scanf("%s", filename);
fp=fopen(filename, "r");
int i, j, k;
i=j=k=0;
countchars(i, j, k, fp);
if (k <=1) {
printf("no necessary");
exit(0);
} else
rewind(fp);
char *p;
p=createname(k);
i=j=0;
int m=0;
while (!feof(fp)) {
// filename1=&p[m];
strcpy(filename1, &p[m]);
fp1=fopen(filename1, "w+");
while (!feof(fp)&&i <=20) {
while (!feof(fp)&&j <=20) {
fread(buffer, 4, 10, fp);
fwrite(buffer, 4, 10, fp1);
j++;
}
i++;
}
m=m+7;
}
}