编写函数统计并输出某串中指定字符串的个数
时间: 2024-05-05 18:15:36 浏览: 79
以下是Python的代码实现:
```python
def count_substring(string, sub):
"""
统计字符串 string 中子串 sub 的个数
"""
count = 0
start = 0
while True:
idx = string.find(sub, start)
if idx == -1:
break
count += 1
start = idx + 1
return count
```
函数接受两个参数:字符串 `string` 和子串 `sub`,返回子串在字符串中出现的个数。
函数中使用了 `find()` 方法查找子串在字符串中的位置。如果找不到子串,`find()` 方法会返回 -1。在每次找到子串后,将计数器加一,并将查找的起始位置往后移动一位。如果找不到子串了,就退出循环并返回计数器的值。
例如,如果要统计字符串 `"hello, world"` 中子串 `"o"` 的个数,可以调用函数:
```python
count_substring("hello, world", "o") # 返回 2
```
相关问题
C语言编写函数fun,统计字符串中指定字符的个数。
可以这样写:
```c
int fun(char *str, char ch) {
int count = 0;
while (*str != '\0') {
if (*str == ch) {
count++;
}
str++;
}
return count;
}
```
其中,`str`是输入的字符串,`ch`是要统计的字符,函数返回这个字符在字符串中出现的次数。
函数的实现很简单,就是遍历字符串的每一个字符,如果遇到和要统计的字符相同的字符,就将计数器加1。最后返回计数器的值即可。
编写函数,求给定字符串中数字字符的个数,在主函数中输入字符串及输出统计的个数。
以下是 Python 代码实现:
```python
def count_digits(s):
count = 0
for c in s:
if c.isdigit():
count += 1
return count
if __name__ == '__main__':
s = input('请输入字符串:')
print('数字字符的个数为:', count_digits(s))
```
在主函数中,我们可以通过 `input` 函数获取用户输入的字符串,然后调用 `count_digits` 函数统计数字字符的个数并输出。`count_digits` 函数中,我们遍历字符串中的每个字符,如果该字符是数字字符,就将计数器加 1,最后返回计数器的值。
阅读全文