2. 简答题 要求使用C++字符串处理方法,调用函数实现判断字符串1中是否包含字符串2。(即字符串2是否是字符串1的子串)。 提示:若字符串1为“cabc” ,字符串2为“ab”,则2是1的子串。(提示:可使用stirng类的find()方法 )
时间: 2023-05-12 07:02:52 浏览: 112
【面向对象的程序设计c++】输入两个字符串,检测第二个字符串是否是第一个字符串的子字符串。
可以使用C语言中的strstr()函数来判断字符串1中是否包含字符串2,该函数的原型为:
char *strstr(const char *str1, const char *str2);
其中,str1为要查找的字符串,str2为要查找的子串。如果str2是str1的子串,则返回str2在str1中第一次出现的位置的指针;如果str2不是str1的子串,则返回NULL。
下面是一个示例代码:
#include <stdio.h>
#include <string.h>
int main()
{
char str1[100], str2[100];
printf("请输入字符串1:");
scanf("%s", str1);
printf("请输入字符串2:");
scanf("%s", str2);
if (strstr(str1, str2) != NULL)
printf("字符串2是字符串1的子串。\n");
else
printf("字符串2不是字符串1的子串。\n");
return 0;
}
注意,该代码中使用了scanf()函数来读取输入的字符串,如果输入的字符串中包含空格,则只会读取空格前面的部分。如果需要读取包含空格的字符串,可以使用fgets()函数。
阅读全文