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

Как при выводе на экран игнорировать слова определённой длины?

02.11.2016, 19:07. Показов 1278. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
На вход в программе даётся текст (например "Hello, world! Hi"). Как сделать так, чтобы программа выводила только те слова, в которых кол-во символов больше числа, в значении некой переменной?

Например, в данном случае ("Hello, world! Hi"), при какой-нибудь N = 2, программа бы выводила только "Hello, world!".

P.S: Нельзя использовать string.h
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.11.2016, 19:07
Ответы с готовыми решениями:

Вывести на экран все слова короче определенной длины и удалить их из списка
1.Создать список слов.Вывести на екран все слова короче определенной длены и удалить их з списка....

Вывести на экран все слова, которые длиннее определенной заданной длины
Создать список слов.Вывести на экран все слова, которые длиннее определенной заданной длины, и...

Удалить слова определённой длины, если ввод осуществляется при помощи команды getchar
Подскажите как удалить слова определённой длины, если ввод осуществляется при помощи команды...

Как вывести на экран строку определенной длины
есть вот такой код printf("%.15s: tick = %lld\n", items.name, items._unsec.tick); как сделать...

3
45 / 45 / 40
Регистрация: 31.08.2015
Сообщений: 147
02.11.2016, 21:13 2
Лучший ответ Сообщение было отмечено Arden как решение

Решение

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
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
void prf(char *s, int n)
{
    int i;
    for(i = 0; i < n ;i++, s++) {
        putchar(*s);
    }
}
int main()
{
    char *s = (char *) malloc(20);
    gets(s);
    int n = 2;
    scanf("%d", &n);
    int z = 0;
    int m = 0;
    while(1) {
        if(ispunct(*s) || isspace(*s) || *s == '\0') {
            z = (m == 0) ? z : z - 1;
            if(z > n) {prf(s-z, z);putchar(*s);}
            z = 0;
            m++;
            if(*s == '\0') break;
        }
        s++;
        z++;
    }
}
1
0 / 0 / 0
Регистрация: 22.10.2016
Сообщений: 17
03.11.2016, 16:51  [ТС] 3
Благодарю! То, что нужно

Добавлено через 2 часа 58 минут
А можно узнать, почему здесь две функции ввода?
0
45 / 45 / 40
Регистрация: 31.08.2015
Сообщений: 147
03.11.2016, 17:42 4
Arden, одна считывает строку, другая минимальную длину слова.
1
03.11.2016, 17:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.11.2016, 17:42
Помогаю со студенческими работами здесь

Найти слова определённой длины
Как заставить это работать !:( Надо найти слова определённой длинны и вывести их. длину вводят с...

Дублирование слова до определенной длины
Как продублировать слово 1 в textBox1 до такой же длины слова 2 в textBox2. По длине слово 1 должно...

Найти слова определенной длины
Дан текст с разделенными пробелами между словами. Найти слова длины n(помогите пожалуйста завтра...


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

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

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