c语言查找指定字符串用数组或函数方式
时间: 2023-09-05 08:04:58 浏览: 177
c语言搜索字符串
### 回答1:
你好!要用C语言查找指定字符串可以使用以下代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "Hello, world!";
char str2[] = "world";
char *ptr;
ptr = strstr(str1, str2);
if(ptr != NULL) {
printf("'%s' found in '%s'\n", str2, str1);
} else {
printf("'%s' not found in '%s'\n", str2, str1);
}
return 0;
}
```
这段代码使用了C语言中的`strstr`函数,该函数可以查找一个字符串中是否包含另一个指定的字符串,如果找到则返回指向该字符串的指针,否则返回`NULL`。在上面的例子中,我们定义了两个字符串`str1`和`str2`,然后使用`strstr`函数查找`str2`是否在`str1`中出现过。如果找到了,就输出信息提示用户;如果没找到,则也输出信息告诉用户。
### 回答2:
在C语言中,我们可以使用数组或函数的方式来实现查找指定字符串的功能。
1. 使用数组的方式:
可以定义一个字符串数组,存储多个字符串,然后通过循环遍历数组中的每个字符串,逐一与目标字符串进行比较,找到匹配的字符串即可。具体实现可以参考以下代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char strings[5][20] = {"apple", "banana", "orange", "watermelon", "grape"};
char target[20];
printf("请输入要查找的字符串:");
scanf("%s", target);
int found = 0;
for (int i = 0; i < 5; i++) {
if (strcmp(strings[i], target) == 0) {
found = 1;
break;
}
}
if (found) {
printf("找到了目标字符串\n");
} else {
printf("未找到目标字符串\n");
}
return 0;
}
```
2. 使用函数的方式:
可以定义一个函数,接收一个字符串数组和目标字符串作为参数,然后在函数内部使用循环遍历数组元素,逐一与目标字符串进行比较,找到匹配的字符串即可。具体实现可以参考以下代码:
```c
#include <stdio.h>
#include <string.h>
int findString(char strings[][20], int size, char* target) {
int found = 0;
for (int i = 0; i < size; i++) {
if (strcmp(strings[i], target) == 0) {
found = 1;
break;
}
}
return found;
}
int main() {
char strings[5][20] = {"apple", "banana", "orange", "watermelon", "grape"};
char target[20];
printf("请输入要查找的字符串:");
scanf("%s", target);
int found = findString(strings, 5, target);
if (found) {
printf("找到了目标字符串\n");
} else {
printf("未找到目标字符串\n");
}
return 0;
}
```
以上就是使用数组和函数的两种方式实现查找指定字符串的方法。根据具体的需求和场景选择适合的实现方式。
### 回答3:
在C语言中,我们可以使用数组或函数来查找指定字符串。
使用数组的方式,我们可以将要查找的字符串作为一个元素逐个存储在一个字符数组中,然后使用循环结构遍历整个数组,逐个比较每个元素与目标字符串是否相同。如果找到相同的字符串,我们可以返回该字符串在数组中的索引位置。如果找不到目标字符串,我们可以返回一个特殊的值,例如-1,表示未找到。这种方式的优势是简单直观,适用于小规模的字符串查找。
使用函数的方式,我们可以定义一个查找函数,以目标字符串和一个字符串数组作为参数。函数内部使用循环结构遍历整个数组,逐个比较数组中的字符串与目标字符串是否相同。如果找到相同的字符串,函数返回该字符串在数组中的索引位置。如果找不到目标字符串,函数返回一个特殊的值,例如-1,表示未找到。这种方式的优势是可以封装为一个函数,方便多次调用,并且可以根据实际需求进行优化,例如采用二分查找等算法来提高查找效率。
综上所述,无论是使用数组还是函数,都可以实现在C语言中查找指定字符串的功能。具体选择哪种方式取决于实际需求和个人偏好。
阅读全文