2. 简答题 要求使用C++字符串处理方法,调用函数实现判断字符串1中是否包含字符串2。(即字符串2是否是字符串1的子串)。 提示:若字符串1为“cabc” ,字符串2为“ab”,则2是1的子串。(提示:可使用stirng类的find()方法 )
时间: 2023-05-12 14:02:52 浏览: 66
可以使用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()函数。
相关问题
1. 简答题 定义一个字符串,计算字符串中大写字母、小写字母、数字的个数并输出。
首先,我们需要定义一个字符串并统计其中大写字母、小写字母和数字的个数。
可以使用 Python 的内置函数 isupper()、islower() 和 isdigit() 来判断一个字符是否为大写字母、小写字母和数字。
下面是一个示例代码:
```python
string = "Hello World 123"
upper_count = 0
lower_count = 0
digit_count = 0
for char in string:
if char.isupper():
upper_count += 1
elif char.islower():
lower_count += 1
elif char.isdigit():
digit_count += 1
print("大写字母个数:", upper_count)
print("小写字母个数:", lower_count)
print("数字个数:", digit_count)
```
输出结果:
```
大写字母个数: 2
小写字母个数: 8
数字个数: 3
```
这里我们定义了一个字符串变量 `string`,并使用了三个计数器变量 `upper_count`、`lower_count` 和 `digit_count` 来分别统计大写字母、小写字母和数字的个数。
然后我们使用 for 循环遍历字符串中的每个字符,如果字符是大写字母,则将 `upper_count` 计数器加 1,如果是小写字母,则将 `lower_count` 计数器加 1,如果是数字,则将 `digit_count` 计数器加 1。
最后输出三个计数器变量的值即可。
1. 简答题 从键盘输入一个字符串和一个字符,从字符串中删除制定的字符。
可以使用字符串的replace方法来删除指定的字符,代码如下:
```
string = input("请输入一个字符串:")
char = input("请输入要删除的字符:")
new_string = string.replace(char, "")
print("删除后的字符串为:", new_string)
```
这段代码首先从键盘输入一个字符串和一个字符,然后使用replace方法将字符串中所有的指定字符替换为空字符串,最后输出删除后的字符串。