币~
#include<stdio.h>
#include<string.h>
int main() {
FILE *fp=NULL; int i=0;
int buf_size = 20;
char *buf = (char *)malloc(buf_size);
char result[20] = { '\0' };
errno_t err;
if ((err=fopen_s(&fp,"E://Create//input.txt", "r"))==0) {
while (!feof(fp)) {
i = 0;
fgets(buf, buf_size,fp);
if (('a' <= buf[0] && buf[0] <= 'z') || ('A' <= buf[0] && buf[0] <= 'Z')) {
int j = 0;
for (; i < buf_size; i++) {
if (!(('a' <= buf[i]&& buf[i] <= 'z' )|| ('A' <= buf[i] && buf[i] <= 'Z'))) {
continue;
}
if (('a' <= buf[i] && buf[i] <= 'z') || ('A' <= buf[i] && buf[i] <= 'Z')) {
result[j] = buf[i];
j++;
}
if (i == buf_size||!(('a' <= buf[i+1] && buf[i+1] <= 'z') || ('A' <= buf[i+1] && buf[i+1] <= 'Z'))) {
puts(result);
j = 0;
memset(result, '\0', 20);
}
}
}
}
fclose(fp);
}
else{
printf("%s","File open error!");
}
getchar();
return 0;
}
这个没办法看出中间是tab还是空格,你得自己测试下,如果是\t跳过4行后用fscanf("%s\t%s\t%s", a, b, c)试试看,abc为3个字符数组