用c语言写一个程序设s,t为俩个字符串,俩个字符串分2行输出,判断t是否为s的子串,如果是,输出子串所在位置(第一个字符,字符串的起始位置从0开始),否则输出-1
时间: 2024-05-02 22:18:14 浏览: 80
【面向对象的程序设计c++】输入两个字符串,检测第二个字符串是否是第一个字符串的子字符串。
```c
#include <stdio.h>
#include <string.h>
int main()
{
char s[100], t[100];
int len_s, len_t, i, j, start;
printf("请输入字符串s:");
gets(s);
printf("请输入字符串t:");
gets(t);
len_s = strlen(s);
len_t = strlen(t);
for (i = 0; i <= len_s - len_t; i++) {
start = i;
for (j = 0; j < len_t; j++) {
if (s[i + j] != t[j]) {
break;
}
}
if (j == len_t) {
printf("t是s的子串,子串位置为:%d\n", start);
return 0;
}
}
printf("t不是s的子串,输出-1\n");
return 0;
}
```
阅读全文