Форум программистов, компьютерный форум, киберфорум
C (Си)
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 01.10.2018
Сообщений: 28
1

Переставить в начало строки все буквы в порядке их следования, затем цифры, и в конце – остальные символы

10.03.2020, 15:50. Просмотров 500. Ответов 1
Метки нет (Все метки)


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

Входные данные:
abh[b55](0123)jw((’)f)#dd&&87


Выходные данные:
abhbjwfdd55012387([]((’))#&&
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.03.2020, 15:50
Ответы с готовыми решениями:

Вывести на экран сначала цифры, затем буквы, затем остальные символы исходной строки
Вывести на экран сначала цифры, затем буквы, затем остальные символы исходной строки. : a -...

В последовательности символов все цифры переписать в порядке их следования в начало строки
В последовательности символов все цифры переписать в порядке их следования в начало строки......

Переместить все цифры в конец, а остальные символы в начало строки, сохраняя порядок взаимного расположения
Преобразовать строку символов по пaравилу: переместить все цифры в конец, а остальные символы в...

Поместить в начало строки слова, содержащие только цифры, а затем – все остальные слова
Строка состоит из слов, разделенных ровно одним пробелом, пробелов перед первым и после последнего...

1
Модератор
Эксперт CЭксперт С++
4291 / 3856 / 707
Регистрация: 07.10.2015
Сообщений: 7,908
10.03.2020, 16:51 2
_nabludatel_, например, так:
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
#include <string.h>
#include <stdio.h>
#include <ctype.h>
 
int main()
{
    char str[64] = "abh[b55](0123)jw((')f)#dd&&87";
    int len = strlen(str);
    int i, j, k, m;
    char ch;
    for (i = 0; i < len; i++)
    {
        if (!isalpha(str[i]))
        {
            for (j = i+1; j < len; j++)
            {
                if (isalpha(str[j]))
                {
                    ch = str[j];
                    for (m = j; m > i; m--)
                        str[m] = str[m - 1];
                    str[i] = ch;
                    k = i + 1;
                    break;
                }
            }
        }
    }
    printf("%s\n", str);
 
    for (i = k; i < len; i++)
    {
        if (!isdigit(str[j]))
        {
            for (j = i + 1; j < len; j++)
            {
                if (isdigit(str[j]))
                {
                    ch = str[j];
                    for (m = j; m > i; m--)
                        str[m] = str[m - 1];
                    str[i] = ch;
                    break;
                }
            }
        }
    }
 
    printf("%s\n", str);
}
Только в итоге получится немного другая строка
abhbjwfdd55012387[]()((’))#&&
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.03.2020, 16:51

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

Поместить в начало строки слова, содержащие только цифры, а затем все остальные слова
Помогите решить задачку, :)строка состоит из слов разделенных ровно 1 пробелом, пробелов перед...

Отсортировать массив так, чтобы в нем сначала шли буквы латинского алфавита, затем цифры и, в конце, остальные элементы
Задан символьный массив размера N. Отсортировать массив так, чтобы в нем сначала шли буквы...

Вывести на экран сначала все цифры, входящие в массив A, а затем все остальные символы
Дан массив А из k символов. Вывести на экран сначала все цифры, входящие в него, а затем все...

Вывести на экран сначала все цифры, входящие в массив символов, а затем все остальные символы
Дан массив из k символов. Вывести на экран сначала все цифры, входящие в него, а затем все...


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

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

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