Dukaliss
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Доброго времени суток, помогите пожалуйста, мне вот дали такое задаие, есть файл в нем слова(которые я ввожу предварительно, слова могут отделяться пробелами, точкой с запятой, тире, заятой и при этом может быть много пробелов, переход на другую строку не предусмотрен, ТЕСКТ РУССКИЙ) В этом файле надо найти все слова начинающиеся и заканивающиеся на согласную буквы, и вставить их в др. текстовик через пробел. Я вот сделал но очень много багов, я не понимаю почему оно принимает все слова, и в Массиве получаеться так ММММММсловоММММ Пока что я не выделял динамически память, в этом проблеммы нет. считай задача тут 1: сделать выборку слов начинающуюся на согл. и заканчивающуюся на согл. букву, и записать их в файл) Вот Код Код: #include <stdio.h> #include <conio.h> #include <math.h> #include <stdlib.h> #include <string.h> void main() { char str[100], str2[100]; int i=0, j=0, k=0, size=20,flag, z, t=0, count=0; FILE * f; f=fopen("1.txt", "r"); while(!feof(f)) { j++; fscanf(f,"%c",&str[i]); i++; } for(i=0;i<j;i++) printf("%c", str[i]); fclose(f); //---------------------------------------------------// flag=1; while (k<j) { if(str[k]=='a' && flag==1) { i=k; while(i<j) { if(str[i]==';') { z=i-1; if(str[z]=='a') { t=0; while(k-1 < z) { str2[k]=str[k]; k++; } } i=j; } i++; } } else {flag=0; if(str[k]=';') {flag=1;} }k++; } //---------------------------------------------------// FILE * f2; f2=fopen("2.txt", "w"); i=0; while(i<j) { fprintf(f2,"%c", str2[i]); i++; } fclose(f2); } | Заранее спасибо! | Всего записей: 12 | Зарегистр. 23-12-2007 | Отправлено: 13:35 03-01-2008 | Исправлено: Dukaliss, 13:39 03-01-2008 |
|