0 / 0 / 0
Регистрация: 24.02.2020
Сообщений: 5
1

Дана строка, состоящая из слов, разделенных пробелами. Вывести слова строки, которые содержат ровно три буквы «k»

24.02.2020, 21:11. Показов 3620. Ответов 0

Author24 — интернет-сервис помощи студентам
Задача дана в заголовке. Выручайте. Набросал код, но компилятор выдает ошибку, если ошибка не существенная - поправьте. Если весь код кривой, прошу исправить).
<k> - Произвольный символ.
Microsoft Visual Studio 2019

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
30
31
32
33
34
35
36
#include <stdio.h>
#include <string.h>
#include <conio.h>
#define size 80
 
int main()
{
    int z = 0, m;
    char s;
    char line[size];
    system("chcp 1251 ");
    system("cls");
    printf("Введите строку: ");
    gets(line);
 
    printf("Введите символ: ");
    s = getchar();
 
    for (int i = 0; i < strlen(line); i++)
    {
        m = i;
        while (i < strlen(line) && strchr(' ', line[i]) == NULL)
        {
            if (line[i] == s) z++;
            i++;
        }
        if (z == 3)
        {
            for (m = 0; m < i; m++) { printf("%s", line[m]); }
            
        }
        z = 0;
    }
    system("pause");
    return 0;
}
Добавлено через 2 часа 33 минуты
Сделал сам.
Кому интересно - код:
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
30
31
32
33
34
35
36
37
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
 
int main()
{
    char ch[80], s;
    int k = 0, a = 0, j = 0;
    
    system("chcp 1251");
    system("cls");
 
    printf("Введите строку: ");
    fgets(ch, sizeof(ch), stdin);
 
    printf("Введите символ: ");
    s = getchar();
    
    int temp = strlen(ch);
    printf("Слова строки, которые содержат ровно три буквы <<%c>>: ", s);
    printf("\n");
    for (int i = 0; i < temp; i++) {
        if (ch[i] == s) { a++; }
 
        if ((a == 3) && (ch[i] == ' ')) {
            for (j; j < i; j++) { printf("%c", ch[j]); }
            j++;
            a = 0;
            printf("\n");
            
        }
        if ((ch[i] == ' ') && (a != 3)) {
            a = 0; j = i + 1;
        }
    }
       return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.02.2020, 21:11
Ответы с готовыми решениями:

Дана строка, состоящая из слов, разделенных пробелами. Вывести слова этой строки, которые отличны от последнего слова
ана строка, состоящая из слов, разделенных пробелами. Вывести слова этой строки, которые отличны от...

Дана строка, состоящая из русских слов. Найти количество слов, которые содержат ровно три буквы «А»
Дана строка, состоящая из русских слов, набранных заглавными буквами и разделенных пробелами (одним...

Дана строка текста, состоящая из слов и чисел, разделенных пробелами, вывести самые короткие слова строки
Дана строка текста, состоящая из слов и чисел, разделенных пробелами, вывести самые короткие слова...

Дана строка, состоящая из слов разделенных пробелами. Вывести на экран порядковый номер слова максмимальной дл
Подскажите как сделать. Дана строка, состоящая из слов разделенных пробелами. Вывести на экран...

0
24.02.2020, 21:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.02.2020, 21:11
Помогаю со студенческими работами здесь

Дана строка, состоящая из слов, разделенных пробелами. Вывести на экран порядковый номер слова минимальной длины и
Дана строка, состоящая из слов, разделенных пробелами. Вывести на экран порядковый номер слова...

Дана строка, состоящая из русских слов, разделенных пробелами. Вывести строку, содержащую эти же слова, разд
Дана строка, состоящая из русских слов, разделенных пробелами. Вывести строку, содержащую эти же...

Дана строка, состоящая из слов, разделенных одним или несколькими пробелами. Вывести строку, содержащую эти же слова
Помогите, напишите программу: Дана строка, состоящая из слов, разделенных одним или несколькими...

Дана строка, состоящая из слов на английском языке, разделенных пробелами. Вывести на экран эти слова в порядке алфавита
Дана строка, состоящая из слов на английском языке, разделенных пробелами. Вывести на экран эти...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru