![]() |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() |
Neon6868 |
![]() ![]()
Сообщение
#1
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 146 Пол: Мужской Репутация: ![]() ![]() ![]() |
Задание:Написать программу, которая считывает текст из файла и определяет, сколько в нём слов, состоящих из не более чем четырёх букв.
Мне прогу написали, но мне надо её изменить.Я изменил, но она почему-то перестала работать!Файл открывается, но на экран ничего не выводится(как будто текст пустой)!И поэтому количество слов выводится 0. Подскажите пожалуйста где ошибка!!! Программа: # include <stdio.h>
# include <conio.h>
# include <string.h>
# define name "G:\\text.txt"
# define znak ";,.?!"
void main()
{
FILE *f;
int x,y,i;
if (!(f=fopen(name,"rt"))) printf("\nOshibka otkritiya faila:");
fseek(f,0,SEEK_END);
long len=ftell(f);
char *s=new char[len+1];
x=0;
while (fgets(s,255,f))
{
puts(s);
i=0;
while (i<strlen(s))
{
while ((i<strlen(s)) && (strchr(znak,s[i]))) i++;
if (i<strlen(s))
{
y=i;
while ((i<strlen(s)) && (!(strchr(znak,s[i])))) i++;
x+=(i-y-1<=4)?1:0;
}
}
}
printf("Kol-vo slov,sostoyashix iz menee 4 bukv=%d\n",x);
fclose(f);
}
|
![]() ![]() |
![]() |
Текстовая версия | 29.07.2025 20:25 |