Форум программистов, компьютерный форум CyberForum.ru

Найти и вывести на печать слова, у которых первая буква входит в слово ещё раз - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 5.00
IceCream_92
0 / 0 / 0
Регистрация: 07.05.2012
Сообщений: 6
06.06.2012, 11:50     Найти и вывести на печать слова, у которых первая буква входит в слово ещё раз #1
Ребята, помогите пожалуйста! Завтра нужно сдавать лабу для допуска к экзамену, а я никак не могу её сделать...
Задание:
в произвольном тексте (взятом из файла), содержащем не более 10 строк, в каждой строке не более 80 символов, найти и вывести на печать слова, у которых первая буква входит в слово ещё раз. Вывести полученный текст на экран и информацию для каждой строки, сколько слов не вошло в полученный текст.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.06.2012, 11:50     Найти и вывести на печать слова, у которых первая буква входит в слово ещё раз
Посмотрите здесь:

Что здесь неправильно? (Вывести все слова строки в которых первая буква входит в него ещё раз) C++
C++ Строковые переменные: Найти все слова, в которых буква ''а'' входит не менее двух раз
C++ Найти в тексте слова, у которых первая буква совпадает с последней
C++ В заданной строке выбрать те слова,в которых первая буква этого слова встречается еще хоть один раз
Определить, имеются ли в последовательности слова, в которых каждая буква слова входит в него не менее двух раз C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Кот Ангенс
 Аватар для Кот Ангенс
317 / 267 / 37
Регистрация: 24.05.2012
Сообщений: 629
06.06.2012, 12:07     Найти и вывести на печать слова, у которых первая буква входит в слово ещё раз #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <stdio.h>
 
int main() {
    FILE* f = fopen("input.txt", "r");
    char s[80], i, j, k, count, first;
    short c;
 
    do {
        for (i = 0; (c = getc(f)) != '\n' && c != EOF; i++)
            s[i] = c;
        first = '\n';
        count = k = 0;
        for (j = 0; j < i; j++)
            if (s[j] == ' ') {
                if (k != j)
                    count++;
                first = '\n';
                k = j + 1;
            } else if (first == '\n')
                first = s[j];
            else if (s[j] == first) {
                while (s[k] != ' ' && k < i)
                    putchar(s[k++]);
                j = ++k;
            }
        printf(": %d\n", count);
    } while (c != EOF);
    fclose(f);
}
IceCream_92
0 / 0 / 0
Регистрация: 07.05.2012
Сообщений: 6
06.06.2012, 12:28  [ТС]     Найти и вывести на печать слова, у которых первая буква входит в слово ещё раз #3
Огромное спасибо, выручили!
IceCream_92
0 / 0 / 0
Регистрация: 07.05.2012
Сообщений: 6
08.06.2012, 13:01  [ТС]     Найти и вывести на печать слова, у которых первая буква входит в слово ещё раз #4
Извините, а можно парочку комментариев написать по коду? Не могу до конца разобраться, при объяснении преподу возникли трудности...

Добавлено через 7 часов 29 минут
хотя бы скажите что обозначает k
Кот Ангенс
 Аватар для Кот Ангенс
317 / 267 / 37
Регистрация: 24.05.2012
Сообщений: 629
08.06.2012, 13:45     Найти и вывести на печать слова, у которых первая буква входит в слово ещё раз #5
i - длина считанной строки, j - счетчик цикла, проходящий по этой строке, k - номер символа, с которого начинается слово.
Yandex
Объявления
08.06.2012, 13:45     Найти и вывести на печать слова, у которых первая буква входит в слово ещё раз
Ответ Создать тему
Опции темы

Текущее время: 19:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru