C语言输入 第一行为一段长度小于100的字符串,字符中只包含字母 第二行为一段长度小于10的子字符串,字符中只有字母 输出 一个正整数,代表字符串中有多少单独的子字符串 同一个字母不能出现在两个子串中 如样例中只有2个子串
时间: 2023-05-15 10:04:41 浏览: 191
C语言字符串的输入和输出
以下是 ChatGPT 的回答:
您好!对于您的问题,我可以给出以下 C 语言代码:
#include <stdio.h>
#include <string.h>
int main() {
char str[101], sub[11];
int len_str, len_sub, count = 0;
scanf("%s", str);
scanf("%s", sub);
len_str = strlen(str);
len_sub = strlen(sub);
for (int i = 0; i <= len_str - len_sub; i++) {
int j;
for (j = 0; j < len_sub; j++) {
if (str[i+j] != sub[j]) {
break;
}
}
if (j == len_sub) {
count++;
i += len_sub - 1;
}
}
printf("%d\n", count);
return 0;
}
这段代码可以实现输入一个字符串和一个子字符串,然后输出字符串中有多少个单独的子字符串。如果同一个字母出现在两个子串中,则不计算为单独的子字符串。
希望这个回答能够帮到您!如果您还有其它问题,欢迎继续提问。
阅读全文