Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Mannimarco
0 / 0 / 1
Регистрация: 06.11.2017
Сообщений: 28
1

Сформировать новое предложение из данного: удалить слова, состоящие менее, чем из 3-х букв и заканчивающиеся на "а"

05.12.2017, 21:31. Просмотров 432. Ответов 3
Метки нет (Все метки)

Дано предложение, нужно сформировать новое, в котором буду удалены слова, состоящие менее, чем из 3-х букв и заканчивающиеся на "а".

Я не знаю как мне удалить все слово, заканчивающееся на "а" и меньше трех.

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
#include <string.h>
#include <stdio.h>
int main()
{
char s1[20];
char a[20];
char b[10];
int k=0;
int k1=0;
int i;
printf("Vvedi stroky=");
gets(s1);
int c=strlen(s1);
for (i=0; i<c; i++)
    {
if (s1[i]!='a'&&s1[i]>3)
 
    a[k++]=s1[i];
}
printf("\nNovay stroka\n");
for (i=0; i<k; i++) {
printf("%c", a[i]);
}
return(0);
}
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.12.2017, 21:31
Ответы с готовыми решениями:

Распечатать введенное предложение, удалив из него слова, которые состоят менее чем из n букв
Задание: Распечатать введенное предложение, удалив из него слова, которые состоят менее чем из n...

Удалить все слова заканчивающиеся на "ия" из введенной строки
1)Ввести строку А с клавиатуры состоящую из заглавных русских букв. Определить каких букв больше:...

В символьной строке удалить все слова, состоящие более чем из N букв
Привет. Нужна помощь. Условие-В символьной строке удалить все слова, состоящие более чем из N...

Удалить все слова, оканчивающиеся группой букв "кая" или "кое"
Удалить из S1,... Sn все слова, оканчивающиеся группой букв, &quot;кая&quot; или &quot;кое&quot;. Хелп, пожалуйста.

Вводится последовательность слов до встречи слова "stop". Образовать предложение, в котором разместить слова, состоящие более чем из 5 букв.
Вводится последовательность слов до встречи слова &quot;stop&quot;. Образовать предложение, в котором...

3
Mannimarco
0 / 0 / 1
Регистрация: 06.11.2017
Сообщений: 28
05.12.2017, 21:59  [ТС] 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
#include <string.h>
#include <stdio.h>
int main()
{
char s1[20];
char a[20];
int k=0;
int i;
printf("Vvedi stroky=");
gets(s1);
int c=strlen(s1);
for (i=0; i<c; i++)
    {
if (s1[i]!='a'&&strlen(s1)>3)
 
    a[k++]=s1[i];
}
printf("\nNovay stroka\n");
for (i=0; i<k; i++) {
printf("%c", a[i]);
}
return(0);
}
0
Геомеханик
808 / 611 / 940
Регистрация: 26.06.2015
Сообщений: 1,409
06.12.2017, 12:26 3
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
38
39
#include <stdio.h>
#include <ctype.h>
#define isdelim(c) (isspace((c)) || ispunct((c)))
#define CB_MAX 128
 
char* str_remove(char* d, const char* s, int n, char c){
    const char* i;
    char* t = d;
    while(*s){
        while(*s && isdelim(*s))
            *d++ = *s++;
 
        i = s;
        while(*i && !isdelim(*i))
            ++i;
 
        if(((int)(i - s) <= n) && (*(i - 1) == c)){
            s = i;
            continue;
        }
 
        while(s != i)
            *d++ = *s++;
    }
    *d = '\0';
    return t;
}
 
int main(void){
    char b[CB_MAX];
    char a[CB_MAX] = "bea (Ra) java apl ada, go, scala, bla sea...";
/*
    printf("Enter: ");
    fgets(a, CB_MAX, stdin);
*/
    puts( str_remove(b, a, 3, 'a') );
    getchar();
    return 0;
}
0
Megageorgio
78 / 80 / 66
Регистрация: 03.04.2017
Сообщений: 216
Завершенные тесты: 1
06.12.2017, 18:36 4
Mannimarco,
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include "stdio.h"
int main() {
    char s[64];
    gets(s);
    for(char i = 0, j = 0, k = 0, l = 0; s[i-1] || !i; i++, j++, l++) {
        if(s[i] == ' ' || s[i] == '\0') {
            if(s[i-1] == 'a' || l < 4) j = k;
            i += !k, k = j, l = 0;
        }
        s[j] = s[i];
    }
    puts(s);
    return 0;
}
0
06.12.2017, 18:36
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.12.2017, 18:36

Удалить из файла слова, состоящие менее чем из трех букв, и лишние пробелы
В символьном файле записаны слова, разделенные пробелами. Удалить из файла слова, состоящие менее...

Дано предложение, состоящее не менее чем из 5 слов. Напечатать все слова из предложения, содержащие ровно две буквы "d".
Помогите пожайлуста решить лабу: Дано предложение, состоящее не менее чем из 5 слов. ...

Ввести текст, состоящий не менее чем из 12 слов. Из данного текста выделить все слова, в которых есть символ "Е"
Ввести текст, состоящий не менее чем из 12 слов. Из данного текста выделить все слова, в которых...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.