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

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

28.04.2014, 20:20. Показов 2290. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
С ( Си )

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

Спасибо.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.04.2014, 20:20
Ответы с готовыми решениями:

В алфавитном порядке напечатать (по одному разу) все строчные русские буквы, входящие в заданный текст
Подскажите ошибку, которую допустила в программе. Задание такое: Вводится текст, за которым...

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

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

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

2
oleg_basik
30.04.2014, 08:49 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
30
31
32
33
34
35
36
37
38
39
40
41
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <windows.h>
 
int main(){
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    char text[1000];
    int i, j, a, N, k=0;
    char *mas, t;
    gets(text);
    N=strlen(text);
    mas=(char*)malloc(1);
    for(i=1; i<N; i++){
        if(text[i]==46)
            break;
        if(text[i]<-32 || text[i]>-1)
            continue;
        a=0;
        for(j=0; j<i; j++){
            if(text[i]==text[j])
                a++;
            if(j==i-1 && a==1){
                realloc(mas,sizeof(mas)+1);
                mas[k]=text[i];
                k++;
            }}}
    mas[k]='\0';
            for(i=k-1; i>0; i--)
                for(j=0; j<i; j++)
                    if(mas[j]>mas[j+1]){
                        t=mas[j];
                        mas[j]=mas[j+1];
                        mas[j+1]=t;
                    }
    printf("Результат: ");
    for(i=0; i<k; i++)
        printf("%c ", mas[i]);
getch();
}
Эксперт функциональных языков программированияЭксперт Java
4465 / 2699 / 484
Регистрация: 28.04.2012
Сообщений: 8,557
30.04.2014, 10:57 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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#include <stdio.h>
 
typedef struct Match Match;
struct Match
{
    char *pattern;
    int   matched;
    int   current;
};
 
void
Minit(Match *m, char *s)
{
    m->pattern = s;
    m->matched = 0;
    m->current = 0;
}
 
void
Mcheck(Match *m, char c)
{
    char *pattern;
 
    pattern = m->pattern;
    if (pattern == NULL || pattern[0] == '\0')
        return;
    if (pattern[m->current] != c) {
        m->current = 0;
        return;
    }
    m->current++;
    if (pattern[m->current] == '\0') {
        m->matched++;
        m->current = 0;
    }
}
 
int
main(int argc, char *argv[])
{
    int i;
    char c;
    Match *matches;
 
    if (argc < 2)
        return 0;
 
    matches = (Match *) malloc(argc * sizeof(Match));
    for (i = 1; i < argc; i++)
        Minit(&matches[i], argv[i]);
 
    while (!feof(stdin)) {
        c = getchar();
        if (c == '.')
            break;
        for (i = 1; i < argc; i++)
            Mcheck(&matches[i], c);
    }
 
    matches++;
    for (i = 1; i < argc; i++, matches++)
        if (matches->matched)
            printf("%s\n", matches->pattern);
 
    return 0;
}
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
> chcp 1251
Текущая кодовая страница: 1251
 
> type test.txt
Вводится текст, за которым следует точка.
> type test.txt | tcc -run strstr.c а е ё и о у ы э ю я
а
е
и
о
у
ы
я
 
>
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.04.2014, 10:57
Помогаю со студенческими работами здесь

Напечатать текст, подчеркивая все заглавные и строчные русские буквы, входящие в него
Дан текст из 60 букв. Напечатать этот текст, подчеркивая (ставя минусы в соответствующих позициях...

Напечатать строчные русские буквы входящие в текст
Дан текст из 60 литер. Напечатать только строчные русские буквы, входящие в этот текст. (через...

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

Распечатать в порядке, обратном алфавитному, все буквы, входящие в текст не менее трех раз
только начал разбирать работу со строками в языке си)не могу организовать програму,помогите...


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

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

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