Написать программу нахождения в строковом файле слов с длиной K символов и переписать в другой файл все слова длины K из исходного файла. Словом считать набор символов, не содержащий пробелов, знаков препинания и ограниченный пробелами, знаками препинания или началом/концом строки. Если исходный файл не содержит слов длины K, то оставить результирующий файл пустым
постоянно выдает ошибки...помогите, пжл, что нужно исправить??
#include <stdio.h> #include <conio.h>
int main(void) { isalpha(unsigned char c); FILE *fin; fin = fopen("D:\\1.txt", "r");// открытие файла для чтения FILE *fout; fout = fopen("D:\\2.txt", "w");// открытие файла для записи int k, p, c, iw = 0; char word[65]; if (!fin && !fout) { printf("File error. Exit...\n"); fclose(fin); fclose(fout); return 0; } printf("K? "); scanf("%d", &k); if (k > 64) { printf("Too long word. Exit...\n"); fclose(fin); fclose(fout); return 0; } do { c = fgetc(fin); if ( !iw && isalpha© ) { iw = 1; p = 0; word[p] = c; } else if ( iw && isalpha© ) { ++p; word[p] = c; if (p == 63) { iw = 0; if (k = 64) { word[64] = '\0'; fprintf(fout, "%s\n", word); } } } else if ( iw && !isalpha© ) { iw = 0; ++p; if (p == k) { word[p] = '\0'; fprintf(fout, "%s\n", word); } } } while (c != EOF); fclose(fin); fclose(fout); printf("\n\n Result of record look in file %s\n", word); _getch(); return 0; }
|
|
|