c switch case判断字符串
时间: 2023-12-12 12:34:27 浏览: 226
在C语言中,switch/case语句只能用于整型或字符型数据的判断,无法直接用于字符串的判断。但是可以通过将字符串转换为整型或字符型数据来实现字符串的判断。以下是两种实现方法:
1.使用枚举类型:将每个字符串定义为一个枚举类型,然后在switch/case语句中使用枚举类型进行判断。例如:
```c
#include <stdio.h>
enum Color {RED, GREEN, BLUE};
int main() {
enum Color color = RED;
switch (color) {
case RED:
printf("The color is red.\n");
break;
case GREEN:
printf("The color is green.\n");
break;
case BLUE:
printf("The color is blue.\n");
break;
default:
printf("Unknown color.\n");
break;
}
return 0;
}
```
2.使用strcmp()函数:strcmp()函数可以比较两个字符串是否相等,可以将需要判断的字符串与每个case语句中的字符串进行比较。例如:
```c
#include <stdio.h>
#include <string.h>
int main() {
char color[10] = "red";
if (strcmp(color, "red") == 0) {
printf("The color is red.\n");
} else if (strcmp(color, "green") == 0) {
printf("The color is green.\n");
} else if (strcmp(color, "blue") == 0) {
printf("The color is blue.\n");
} else {
printf("Unknown color.\n");
}
return 0;
}
```
阅读全文