读入一些字符串,将其中的小写字母转成大写字母(其他字符不变)。c++
时间: 2024-03-03 22:52:52 浏览: 117
可以使用 `toupper()` 函数将小写字母转成大写字母,代码如下:
```c++
#include <iostream>
#include <cstring>
#include <cctype>
int main() {
const int MAXN = 100;
char str[MAXN];
std::cout << "Please enter a string: ";
std::cin.getline(str, MAXN);
for (int i = 0; i < strlen(str); i++) {
if (islower(str[i])) {
str[i] = toupper(str[i]);
}
}
std::cout << "The result is: " << str << std::endl;
return 0;
}
```
运行结果:
```
Please enter a string: Hello, world!
The result is: HELLO, WORLD!
```
相关问题
将字符串中的小写字母转换成大写字母 题目描述 给定一个字符串,将其中所有的小写字母转换成大写字母。 输入格式 输入一行,包含一个字符串(长度不超过100,可能包含空格)。 输出格式 输出转换后的字符串。使用c++
可以使用C语言中的标准库函数`toupper`来将小写字母转换成大写字母。具体方法如下:
```c
#include <stdio.h>
#include <ctype.h>
int main()
{
char str[101];
fgets(str, 101, stdin); // 读入字符串
for (int i = 0; str[i] != '\0'; i++)
{
if (islower(str[i])) // 判断是否为小写字母
printf("%c", toupper(str[i])); // 转换成大写字母并输出
else
printf("%c", str[i]); // 否则直接输出
}
return 0;
}
```
其中,`islower`函数用于判断是否为小写字母,`toupper`函数用于将小写字母转换成大写字母。
问题描述 读入一些字符串,将其中的小写字母转成大写字母(其他字符不变)。 输入 输入为多行,每行为一个字符串,字符串只由字母和数字组成,长度不超过80。输入以“End of file“结束。 输出 对于每行输入,输出转换后的字符串。
要解决这个问题,你可以编写一个简单的C++程序,使用标准库中的`std::cin`从控制台读取输入的字符串,然后遍历每个字符,如果是小写字母则将其转换为大写,其他字符保持不变。这里是一个可能的解决方案:
```cpp
#include <iostream>
#include <cctype> // 包含 toupper 函数
int main() {
std::string input;
while (std::getline(std::cin, input)) { // 使用 getline 读取每一行
if (input == "End of file") { // 结束条件
break;
}
for (size_t i = 0; i < input.length(); ++i) {
if (islower(input[i])) { // 判断是否为小写字母
input[i] = toupper(input[i]); // 转换为大写
}
}
std::cout << input << std::endl; // 输出转换后的字符串
}
return 0;
}
```
在这个程序中,我们使用了`std::getline`来逐行读取输入,`islower`函数检查字符是否为小写字母,`toupper`函数用于将字符转换为大写。
阅读全文