5 / 0 / 0
Регистрация: 06.07.2013
Сообщений: 59
|
|
1 | |
Как перевести букву из нижнего регистра в верхний?10.07.2013, 18:32. Показов 35654. Ответов 15
Метки нет (Все метки)
Например:
Введите букву: g Та же буква в верхнем регистре: G Желательно с пояснением) и 2 вопрос, а с русскими можно?
0
|
10.07.2013, 18:32 | |
Ответы с готовыми решениями:
15
Символы из нижнего регистра перевести в верхний Буква из нижнего регистра в верхний Замена нижнего регистра литер русского языка, вводимых с клавиатуры, на верхний регистр Написать функцию которая в строке заменяет все символы верхнего регистра в символы нижнего регистра |
88 / 83 / 21
Регистрация: 08.08.2012
Сообщений: 737
|
|
10.07.2013, 18:50 | 3 |
можно прибавлять в букве разницу между регистрами.
0
|
55 / 55 / 6
Регистрация: 07.07.2013
Сообщений: 345
|
||||||
10.07.2013, 18:52 | 4 | |||||
1
|
10.07.2013, 19:07 | 5 | |||||
1
|
5 / 0 / 0
Регистрация: 06.07.2013
Сообщений: 59
|
|
10.07.2013, 19:11 [ТС] | 6 |
Всем огромное Спасибо!
0
|
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
|
||||||
11.07.2013, 05:11 | 7 | |||||
Чтобы с русскими не глючило, нужно русский ввод сделать (но setlocale(LC_ALL, "Russian") тоже оставить) и приводить параметр toupper() к unsigned char(toupper() без такого приведения работает, но другие функции cctype могут вызывать ошибку):
3
|
194 / 174 / 30
Регистрация: 10.07.2012
Сообщений: 800
|
|||||||||||
11.07.2013, 06:47 | 8 | ||||||||||
функция, по-видимому, просто выполняет прибавление. поэтому всегда нужна проверка.
1
|
5 / 0 / 0
Регистрация: 06.07.2013
Сообщений: 59
|
|
11.07.2013, 07:49 [ТС] | 10 |
alsav22, тебе отдельное спс за код и за объяснение
0
|
0 / 0 / 0
Регистрация: 12.02.2021
Сообщений: 28
|
||||||
13.08.2021, 16:20 | 11 | |||||
0
|
5113 / 4552 / 854
Регистрация: 07.10.2015
Сообщений: 9,462
|
||||||
13.08.2021, 16:41 | 12 | |||||
Programmer c, еще вариант:
0
|
3878 / 2476 / 418
Регистрация: 09.09.2017
Сообщений: 10,829
|
||||||
14.08.2021, 13:26 | 13 | |||||
Код
$ g++ main.c main.c:6:15: warning: multi-character character constant [-Wmultichar] 6 | char ch = 'ы'; | ^~~~ main.c: In function ‘int main()’: main.c:6:15: warning: overflow in conversion from ‘int’ to ‘char’ changes value from ‘53643’ to ‘'\37777777613'’ [-Woverflow] main.c:7:25: error: ‘_get_current_locale’ was not declared in this scope 7 | ch = _toupper_l(ch, _get_current_locale()); | ^~~~~~~~~~~~~~~~~~~ main.c:7:10: error: ‘_toupper_l’ was not declared in this scope; did you mean ‘toupper_l’? 7 | ch = _toupper_l(ch, _get_current_locale()); | ^~~~~~~~~~ | toupper_l А вот если использовать стандартные функции, все работает:
0
|
2750 / 2257 / 694
Регистрация: 29.06.2020
Сообщений: 8,355
|
|
14.08.2021, 15:51 | 14 |
интересно как вы будете это делать с ucs2
со своим + - костылеклепальщики ... Добавлено через 1 минуту Для перевода регистра букв, нужно иметь карту в одну и обратную стороны. Это универсальный, надежный способ.
0
|
Модератор
8902 / 6672 / 917
Регистрация: 14.02.2011
Сообщений: 23,500
|
||||||
14.08.2021, 16:02 | 16 | |||||
все это делается одной строчкой
0
|
14.08.2021, 16:02 | |
14.08.2021, 16:02 | |
Помогаю со студенческими работами здесь
16
написать функцию, которая в строке заменяет все символы верхенго регистра в символы нижнего регистра В новом файле заменить все латинские буквы верхнего регистра на буквы нижнего регистра Заменить все буквы нижнего регистра в строке на буквы верхнего регистра Функция преобразует буквы верхнего регистра в строке s в буквы нижнего регистра Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |