华为od机考题库e卷字符串比较
时间: 2025-04-19 11:45:52 浏览: 27
### 华为OD机考题库 E卷 字符串比较相关试题
#### 题目描述
给定两个字符串 `str1` 和 `str2`,编写一个函数来判断这两个字符串是否相等。如果相等返回 true;如果不相等则返回 false。
注意:
- 比较时不区分大小写。
- 如果任意输入为空,则认为不相等。
#### 示例代码实现
```cpp
#include <iostream>
#include <string>
using namespace std;
bool areStringsEqual(const string& str1, const string& str2) {
if (str1.empty() || str2.empty()) {
return false;
}
// 将两个字符串转换成小写字母形式再做对比
string lowerStr1 = str1;
string lowerStr2 = str2;
transform(lowerStr1.begin(), lowerStr1.end(), lowerStr1.begin(), ::tolower);
transform(lowerStr2.begin(), lowerStr2.end(), lowerStr2.begin(), ::tolower);
return lowerStr1 == lowerStr2;
}
int main(){
cout << boolalpha; // 输出布尔值而不是0/1
// 测试案例
cout << "Test Case 1: " << areStringsEqual("Hello", "hello") << endl; // 应该输出true
cout << "Test Case 2: " << areStringsEqual("", "") << endl; // 取决于具体定义,这里按要求应输出false
cout << "Test Case 3: " << areStringsEqual("World!", "world!") << endl; // 应该输出true
cout << "Test Case 4: " << areStringsEqual("Example", "example ") << endl; // 应该输出false
}
```
此段程序实现了基本功能并考虑到了一些特殊情况处理[^1]。
阅读全文
相关推荐


















