写一段用case判断字符串是否相等的代码
时间: 2024-05-02 08:19:54 浏览: 75
可以参考下面的代码实现:
```
char str1[] = "Hello";
char str2[] = "World";
switch (strcmp(str1, str2)) {
case 0:
printf("str1 and str2 are equal\n");
break;
default:
printf("str1 and str2 are not equal\n");
break;
}
```
其中,strcmp是C语言中字符串比较函数,如果两个字符串相等,返回值为0。根据返回值进行case判断,即可判断字符串是否相等。
相关问题
帮我写一段c++程序,输入两个字符串,判断是否相等(不区分大小写),注意使用标准程序框架
当然可以,下面是一个简单的 C++ 程序示例,用于比较两个字符串是否相等,不考虑大小写:
```cpp
#include <iostream>
#include <string>
#include <algorithm> // 包含lower_case_copy函数,用于将字符串转为小写
bool areStringsEqual(const std::string& str1, const std::string& str2) {
// 将两个字符串都转换为小写
std::string lowerStr1 = str1;
std::transform(lowerStr1.begin(), lowerStr1.end(), lowerStr1.begin(), ::tolower); // 使用tolower函数
std::string lowerStr2 = str2;
std::transform(lowerStr2.begin(), lowerStr2.end(), lowerStr2.begin(), ::tolower);
// 比较处理后的字符串是否相等
return lowerStr1 == lowerStr2;
}
int main() {
std::string input1, input2;
std::cout << "请输入第一个字符串: ";
getline(std::cin, input1);
std::cout << "请输入第二个字符串: ";
getline(std::cin, input2);
if (areStringsEqual(input1, input2)) {
std::cout << "两个字符串(不区分大小写)相等。\n";
} else {
std::cout << "两个字符串(不区分大小写)不相等。\n";
}
return 0;
}
```
在这个程序中,我们首先定义了一个辅助函数 `areStringsEqual`,它接受两个字符串并先将它们转化为小写,然后比较这两个小写的字符串是否相等。
在主函数 `main` 中,通过 `getline` 函数获取用户输入的两个字符串,并调用 `areStringsEqual` 函数进行比较。
字符串判断是否大小写c语言
在C语言中,你可以使用标准库中的函数来判断字符串是否区分大小写。C语言本身是区分大小写的,所以当你在比较字符串时,字符的大小写会被区分开来。如果你想要比较两个字符串是否完全相同(忽略大小写),你可以通过将每个字符串中的大写字母转换为小写字母,或者将小写字母转换为大写字母,然后进行比较。
以下是一个示例代码,展示了如何在C语言中忽略大小写来判断两个字符串是否相同:
```c
#include <stdio.h>
#include <string.h>
#include <ctype.h>
int string_equal_case_insensitive(const char *str1, const char *str2) {
if (str1 == NULL || str2 == NULL)
return 0;
while (*str1 && *str2) {
if (tolower((unsigned char)*str1) != tolower((unsigned char)*str2)) {
return 0; // 字符不相同
}
str1++;
str2++;
}
return (*str1 == 0 && *str2 == 0); // 确保字符串同时结束
}
int main() {
const char *str1 = "Hello World";
const char *str2 = "hello world";
if (string_equal_case_insensitive(str1, str2)) {
printf("两个字符串在忽略大小写的情况下是相同的。\n");
} else {
printf("两个字符串在忽略大小写的情况下是不同的。\n");
}
return 0;
}
```
在这段代码中,`string_equal_case_insensitive` 函数通过 `tolower` 函数将字符串中的每个字符转换为小写,然后比较转换后的字符串是否相等。如果两个字符串在忽略大小写的情况下相等,函数返回1,否则返回0。
阅读全文