Как в С/С++ изменить регистр букв с маленькой на большую в СТРОКЕ?
Введение
Изменение регистра символов в строке является одной из распространенных задач в программировании. В языке программирования C/C++, вы можете легко изменить регистр символов с маленькой буквы на большую в строке с помощью нескольких встроенных функций.
Использование функций toupper() и islower()
В C/C++, вы можете использовать функцию toupper(char c)
, чтобы преобразовать символы с маленькой на большую букву. Она изменяет только символы в нижнем регистре и оставляет символы в верхнем регистре без изменений.
Также вы можете использовать функцию islower(char c)
, чтобы проверить, является ли символ в строке изначально в нижнем регистре.
Перед тем, как приступить к изменению, вы можете проверить, нужно ли делать изменение. Если в строке нет символов, требующих изменения регистра, выведите соответствующее сообщение.
Пример кода
#include <iostream>
#include <cctype>
#include <cstring>
int main() {
char str[100];
std::cout << "Введите строку: ";
std::cin.getline(str, 100);
int length = strlen(str);
bool isChanged = false;
for (int i = 0; i < length; i++) {
if (islower(str[i])) {
str[i] = toupper(str[i]);
isChanged = true;
}
}
if (isChanged) {
std::cout << "Строка после изменения регистра: " << str << std::endl;
} else {
std::cout << "В строке нет символов, требующих изменения регистра." << std::endl;
}
return 0;
}
Объяснение кода
- Подключаем необходимые заголовочные файлы для использования функций
toupper()
,islower()
иstrlen()
. - Объявляем массив символов
str
для хранения введенной строки. - С помощью функции
cin.getline(str, 100)
пользователь вводит строку (до 100 символов) с клавиатуры. - Определяем длину строки с помощью функции
strlen()
. - Используя цикл
for
, перебираем каждый символ строки. - Если символ является буквой в нижнем регистре (проверка с помощью функции
islower()
), изменяем его на символ в верхнем регистре с помощью функцииtoupper()
. - Поднимаем флаг
isChanged
, если было произведено какое-либо изменение. - После цикла проверяем значение флага
isChanged
. Если он равенtrue
, выводим измененную строку. - Если значение флага
isChanged
равноfalse
, выводим сообщение о том, что в строке нет символов, требующих изменения регистра.
Заключение
В данной статье было показано, как в языке программирования C/C++ изменить регистр букв с маленькой на большую в строке. Используя функции toupper()
и islower()
, вы можете легко изменить регистр символов и проверить, требуется ли это. Все примеры кода и объяснения помогут вам в выполнении подобных задач. Приятного программирования!