Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 27, средняя оценка - 4.89
Programmer c
5 / 0 / 2
Регистрация: 06.07.2013
Сообщений: 59
#1

как перевести букву из нижнего регистра в верхний C++ - C++

10.07.2013, 18:32. Просмотров 4299. Ответов 9
Метки нет (Все метки)

Например:
Введите букву: g
Та же буква в верхнем регистре: G
Желательно с пояснением)
и 2 вопрос, а с русскими можно?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.07.2013, 18:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос как перевести букву из нижнего регистра в верхний C++ (C++):

Символы из нижнего регистра перевести в верхний - C++
Приветствую. Нужно символы из нижнего регистра перевести в верхний. Вот сама программа (которую можно не смотреть): #include...

Буква из нижнего регистра в верхний - C++
добрый день, цель задачи: Преобразование букв нижнего регистра в верхний регистр, используя неконстантный указатель на неконстантные...

Замена нижнего регистра литер русского языка, вводимых с клавиатуры, на верхний регистр - C++
Для программы необходимо реализовать замену нижнего регистра литер русского языка вводимых с клавиатуры на верхний регистр.Подскажите кто...

Написать функцию которая в строке заменяет все символы верхнего регистра в символы нижнего регистра - C++
Здравствуйте. помогите написать программу. Написать функцию которая в строке заменяет все символы верхнего регистра в символы нижнего...

написать функцию, которая в строке заменяет все символы верхенго регистра в символы нижнего регистра - C++
привет всем, помогите составить программу для решения данной задачи. написать функцию, которая в строке заменяет все символы верхенго...

В новом файле заменить все латинские буквы верхнего регистра на буквы нижнего регистра - C++
9. В новом файле заменить все латинские буквы верхнего регистра на буквы нижнего регистра. help

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Мимино
180 / 151 / 5
Регистрация: 22.05.2013
Сообщений: 435
Записей в блоге: 1
10.07.2013, 18:42 #2
toupper('g')
из ctype.h
0
Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
10.07.2013, 18:50 #3
можно прибавлять в букве разницу между регистрами.
0
BigLow
55 / 55 / 2
Регистрация: 07.07.2013
Сообщений: 345
10.07.2013, 18:52 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
int main()
{
    setlocale(LC_ALL, "Russian");
 
    char ch;
 
    std::cout << "Введите букву: ";
    std::cin >> ch;
 
    ch = toupper(ch);
    
    std::cout << "Та же буква в верхнем регистре: " << ch << std::endl;
 
    system("pause");
    return 0;
}
вот с русскими буквами что то глючит
1
igorrr37
1647 / 1275 / 133
Регистрация: 21.12.2010
Сообщений: 1,932
Записей в блоге: 7
10.07.2013, 19:07 #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <windows.h>
 
int main()
{
    char arr[2] = {0};
    while(true)
    {
        std::cin.get(arr[0]).ignore(100, '\n');
        OemToCharA(arr, arr);
        arr[0] == -72 ? arr[0] = -88 : arr[0] -= 32;
        CharToOemA(arr, arr);
        std::cout << arr;
    }
    return 0;
}
1
Programmer c
5 / 0 / 2
Регистрация: 06.07.2013
Сообщений: 59
10.07.2013, 19:11  [ТС] #6
Всем огромное Спасибо!
0
alsav22
5419 / 4815 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
11.07.2013, 05:11 #7
Цитата Сообщение от BigLow Посмотреть сообщение
вот с русскими буквами что то глючит
Чтобы с русскими не глючило, нужно русский ввод сделать (но setlocale(LC_ALL, "Russian") тоже оставить) и приводить параметр toupper() к unsigned char(toupper() без такого приведения работает, но другие функции cctype могут вызывать ошибку):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <cstdlib>
#include <windows.h>
 
int main()
{
    setlocale(LC_ALL, "Russian");
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
    char ch;
 
    std::cout << "Введите букву: ";
    std::cin >> ch;
 
    ch = toupper((unsigned char)ch);
    
    std::cout << "Та же буква в верхнем регистре: " << ch << std::endl;
 
    system("pause");
    return 0;
}
2
Миниатюры
как перевести букву из нижнего регистра в верхний C++  
salam
163 / 144 / 12
Регистрация: 10.07.2012
Сообщений: 728
11.07.2013, 06:47 #8
функция, по-видимому, просто выполняет прибавление. поэтому всегда нужна проверка.
C++
1
2
3
char c;
if(islower(c))
   c = toupper(c);
а вообще лучше определить собственную безопасную функцию. например:
C++
1
2
3
char toup(char c) {
   return (c >= 'a' && c <= 'z' ? (char)('A' + (c - 'a')) : c);
}
1
alsav22
5419 / 4815 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
11.07.2013, 07:07 #9
Цитата Сообщение от salam Посмотреть сообщение
функция, по-видимому, просто выполняет прибавление. поэтому всегда нужна проверка.
Это по поводу?...
1
Programmer c
5 / 0 / 2
Регистрация: 06.07.2013
Сообщений: 59
11.07.2013, 07:49  [ТС] #10
alsav22, тебе отдельное спс за код и за объяснение
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.07.2013, 07:49
Привет! Вот еще темы с ответами:

Функция преобразует буквы верхнего регистра в строке s в буквы нижнего регистра - C++
Задание: strlwr char *strlwr( char *s); Функция преобразует буквы верхнего регистра в строке s в буквы нижнего регистра. P.S....

Заменить все буквы нижнего регистра в строке на буквы верхнего регистра - C++
Определить функцию, заменяющую все буквы нижнего регистра в строке на буквы верхнего регистра.

Написать программу, меняющую первую букву каждого слова на эту же букву верхнего регистра - C++
Дан массив из 10 строк по 80 символов, требуется заменить первую букву в каждом слове на эту же букву верхнего регистра(например: вводим...

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


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
11.07.2013, 07:49
Ответ Создать тему
Опции темы

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