singlepost

символы и строки << На главную или назад  

13 ответов в теме “символы и строки”

Страницы: [1] 2 »

  1. 1
    Dasha Zhuk ответил:

    че-то вспоминается фраза "я не волшебник,я только учусь…" (: ну да ладно.
    проблема вот в чем:прога должна читать из файла какой-нить текст и выводитьколичество слов с буквой «С» третьим символом.с файлом открыть-читать все путем,а вот какую функцию надо использовать для нахождения 3-го символа???(С++ рулит)
    подскажите,а?

  2. 2
    Александр Чигринец ответил:

    Прежде чем искать третий символ, нужно прочитать "слово", т.е. последовательность символов от одного разделителя до другого (разделители придётся определить самостоятельно. Например: пробел, табуляция, перевод строки). А уж потом смотреть третий символ и если он оказался "с", то увеличивать счётчик.

  3. 3
    Юрий Петров ответил:

    Возможно, не нужно извращаться с разделителями =) Если это пробельные символы. Или если гарантируется, что в начале слова нет знаков препинания и прочей гадости (что верно, если текст написан по-человечески). Естественно, с формальной точки зрения все не так.
    А так можно в лоб использовать scanf("%s", …) или ifstream.
    Третий символ берется, опять же, в лоб… s[2] (если, конечно, не нумеровать с нуля ;) ) Еще полезно проверить, что строка состоит минимум из 3х символов…

  4. 4
    Dasha Zhuk ответил:

    ну,это,конечно,да. но если текст не по человечески(а так оно и есть)то как начать читать слово,ведь перед ним может стоять любой знак препинания,пробел(и не один,но тут все понятно).короче,как определить начало слова??

  5. 5
    Владимир Зевахин ответил:

    Слово начинается с Буквы.

  6. 6
    Dasha Zhuk ответил:

    бесспорно.)))))))))) тогда через какую функцию это делать?

  7. 7
    Аристарх Анонимусов ответил:

    выделить массив симмволов, с которых может начинаться слово. либо диапазон проверять, если знаете какая codepage будет использоваться at runtime. смотрим символ: если он не в числе вышеуказанных, значит это не слово, а пробел или что-то еще (запятая, тчк). как только встретится первый символ из набора — вот оно начало.
    ifstream.get
    ifstream.read
    ifstream.readsome
    для вытасквания символом по одному эти ф-ции подойдут.

  8. 8
    Владимир Зевахин ответил:

    #include <string.h>
    #include <fstream>
    char c;
    c = ifstream.peek();
    if (isalpha(c)) // читаем слово

  9. 9
    Dasha Zhuk ответил:

    ага,спасибки)) ща попробую))

  10. 10
    Василий Степанов ответил:

    из любопытства: что проверяет функция isalpha()?

Страницы: [1] 2 »

Клуб программистов работает уже ой-ой-ой сколько, а если поточнее, то с 2007 года.