21.05.2016, 00:00
общий
это ответ
Здравствуйте, Usagisan!
Можно сделать, например, так:
[code h=200]
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <windows.h>
/**Дан текстовый файл. Вывести первое слово текста наибольшей длины. */
int main()
{
char text[256];
char str[256];
char seps[] = " ,:.-?!()+=\t\n";
char *token;
int len,maxlen = 0;
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
printf("Определяет и выводится на экран первое слово наибольшей длины \n"
"Введите путь к файлу: ");
gets(text);
FILE *my_file = fopen(text, "r");
if ( !my_file )
{
printf("Не могу открыть файл '%s'", text);
return 0;
}
while (fgets(text, sizeof(text), my_file))
{
for(token=strtok(text,seps); token!=NULL; token=strtok(NULL,seps))
{
len = strlen(token);
if (len > maxlen)
{
strcpy(str, token);
maxlen = len;
}
}
}
fclose(my_file);
printf("Самое длинное слово - %s\n", str);
return 0;
}
[/code]
5
Раз за разом выручаете! Большое спасибо!
Об авторе:
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен