2、 编写函数int findsub(char *str1,char *str2),功能是返回字符串str2在字符串str1中首先出现的字符位置。如,设str1的内容为“wherever”,str2的内容为er,则返回整数3。手工写出程序代码,并给出测试运行结果
时间: 2023-12-14 08:37:57 浏览: 98
以下是函数int findsub(char *str1,char *str2)的代码实现:
```c
#include <stdio.h>
#include <string.h>
int findsub(char *str1, char *str2) {
int len1 = strlen(str1);
int len2 = strlen(str2);
int i, j;
for (i = 0; i <= len1 - len2; i++) {
for (j = 0; j < len2; j++) {
if (str1[i + j] != str2[j]) {
break;
}
}
if (j == len2) {
return i;
}
}
return -1;
}
int main() {
char str1[] = "wherever";
char str2[] = "er";
int pos = findsub(str1, str2);
printf("The position of \"%s\" in \"%s\" is: %d\n", str2, str1, pos);
return 0;
}
```
测试运行结果为:
```
The position of "er" in "wherever" is: 3
```
阅读全文