C++ 程序切换字符串的大小写

17 Mar 2025 | 4 分钟阅读

编程的基本活动是字符串操作,切换字符串中字符的大小写是一个常见的操作。在本教程中,我们将学习如何编写一个 C++ 程序来切换字符串中的大小写。

识别问题

将大写字母转换为小写字母,将小写字母转换为大写字母,称为切换字符串的大小写。目标是在生成的新字符串中,每个字符都与原始字符串中的字符大小写相反,同时保留非字母字符。

切换字符串中大小写的算法

可以使用一种简单的方法来切换字符串中的大小写

  • 首先,设置一个空字符串来保存结果。
  • 之后,逐个遍历输入字符串中的每个字符。
  • 验证每个字符是否为字母字符
  • 如果字符是大写字母,则将其转换为小写字母并添加到结果字符串中。
  • 如果字符是小写字母,则将其转换为大写字母并添加到结果字符串中。
  • 如果字符不是字母字符,则将其添加到结果字符串中。
  • 处理完输入字符串中的所有字符后,继续此过程。
  • 包含切换大小写后的输入字符串将存储在结果字符串中。

程序 1

让我们看一个 C++ 程序来切换字符串中的大小写

输出

C++ Program to Toggle Cases in a String

说明

  1. 定义了一个名为 toggleCases 的函数,它接受一个输入字符串,并输出大小写切换后的字符串。
  2. 之后,我们在函数内部初始化一个空字符串 result,用于存储更改后的字符串。
  3. 接下来,我们使用 for 循环遍历输入字符串中的每个字符。
  4. 使用 isalpha,我们判断字符是否为字母字符。
  5. 如果字母是大写,我们使用 tolower 将其转换为小写,然后将其附加到输出字符串。
  6. 如果字母是小写,我们使用 toupper 将其转换为大写,然后将其附加到输出字符串。
  7. 如果字符不是字母字符,则将其附加到结果字符串。
  8. 最后,我们切换大小写并返回结果字符串。
  9. 用户输入一个字符串,然后在 main 函数中使用该字符串,通过调用 toggleCases 函数切换大小写后,显示原始字符串和修改后的字符串。

程序 2

让我们看另一个 C++ 程序来切换字符串中的大小写

输出

C++ Program to Toggle Cases in a String

说明

  1. 在此程序中,程序的开头包含了 input/output()string manipulation() 头文件。
  2. toggleCases 定义了切换给定字符串中大小写的功能。它接收输入字符串作为参数后返回更改后的字符串。
  3. toggleCases 函数中:
    • 复制输入字符串并将其保存在名为 result 的变量中,以确保原始字符串保持不变。
  4. 之后,程序使用一个循环来迭代返回字符串中的每个字符。
    • 循环逐个字符地迭代并分别处理每个字符。
  5. 对于结果字符串中的每个字符
    • 代码使用 isalpha 函数来确定字符是否为字母字符。
    • 之后,如果字符是字母字符,则切换其大小写。
    • 代码使用三元(条件)运算符来切换大小写。它使用 tolower(c) 将大写字符转换为小写。如果它是大写,则使用 toupper(c) 将其从小写转换为大写。
  6. result 变量包含大小写切换后的修改字符串。
  7. toggleCases 返回更新后的字符串。
  8. 在主函数中
    • 应用程序要求用户使用 cout 输入一个字符串。
    • 使用 getline,它读取用户输入并将其存储在 input 字符串中。
  9. 要切换输入字符串中的大小写,需要调用 toggleCases 函数并传入 input 字符串作为参数。
  10. 之后,程序使用 cout 显示更新后的字符串(大小写已切换)以及原始字符串。
  11. 当程序最终返回 0 时,表示它已成功执行。

此处提供的推理详细解释了代码如何切换给定字符串中字母字符的大小写而不改变非字母字符。