在c语言中:编写一个函数int issubstr(char s【】,char t【】),判断字符串t是否是字符串s的子串,在主程序中输入两个字符串,调用函数输出结果。
时间: 2024-02-23 13:58:10 浏览: 65
好的,这是一个简单的C语言编程题目。以下是实现代码:
```c
#include <stdio.h>
#include <string.h>
int issubstr(char s[], char t[]) {
int i, j, k;
int len_s = strlen(s);
int len_t = strlen(t);
for (i = 0; i <= len_s - len_t; i++) {
for (j = i, k = 0; k < len_t && s[j] == t[k]; j++, k++) {
;
}
if (k == len_t) {
return i;
}
}
return -1;
}
int main() {
char s[100], t[100];
printf("请输入字符串s:\n");
scanf("%s", s);
printf("请输入字符串t:\n");
scanf("%s", t);
if (issubstr(s, t) >= 0) {
printf("字符串t是字符串s的子串!\n");
} else {
printf("字符串t不是字符串s的子串!\n");
}
return 0;
}
```
代码中的`issubstr`函数用于判断字符串`t`是否是字符串`s`的子串,如果是则返回子串在父串中的起始位置,否则返回-1。
在主函数中,先让用户输入两个字符串`s`和`t`,然后调用`issubstr`函数进行判断,最后输出结果。
阅读全文