编写一个函数由实参传来一个字符串统计此字符串中字母数字空格和其他字符的个数在主函数中输入字符串以及输出上述的结果
时间: 2024-04-27 19:13:40 浏览: 192
以下是 Python 代码实现:
```python
def count_chars(string):
letters = 0
digits = 0
spaces = 0
others = 0
for char in string:
if char.isalpha():
letters += 1
elif char.isdigit():
digits += 1
elif char.isspace():
spaces += 1
else:
others += 1
print("字母个数:", letters)
print("数字个数:", digits)
print("空格个数:", spaces)
print("其他字符个数:", others)
# 主函数
if __name__ == '__main__':
string = input("请输入一个字符串: ")
count_chars(string)
```
示例输出:
```
请输入一个字符串: Hello World! 123
字母个数: 10
数字个数: 3
空格个数: 2
其他字符个数: 1
```
相关问题
由C语言实现编写一个函数由实参传来一个字符串统计此字符串中字母数字空格和其他字符的个数在主函数中输入字符串以及输出上述的结果
下面是一个简单的C语言函数,可以统计一个字符串中字母、数字、空格和其他字符的个数:
```c
#include <stdio.h>
#include <ctype.h>
void count_chars(char *str, int *letters, int *digits, int *spaces, int *others) {
char ch;
*letters = *digits = *spaces = *others = 0;
while ((ch = *str++) != '\0') {
if (isalpha(ch))
(*letters)++;
else if (isdigit(ch))
(*digits)++;
else if (isspace(ch))
(*spaces)++;
else
(*others)++;
}
}
int main() {
char str[100];
int letters, digits, spaces, others;
printf("Enter a string: ");
fgets(str, sizeof(str), stdin);
count_chars(str, &letters, &digits, &spaces, &others);
printf("Letters: %d\n", letters);
printf("Digits: %d\n", digits);
printf("Spaces: %d\n", spaces);
printf("Other characters: %d\n", others);
return 0;
}
```
在主函数中,我们首先输入一个字符串,然后调用 `count_chars` 函数来统计字符的个数。函数使用 `ctype.h` 中的 `isalpha`、`isdigit` 和 `isspace` 函数来判断字符的类型。在函数中,我们使用指针来返回每种类型字符的个数,因为需要修改这些变量的值。在主函数中,我们只需要打印这些变量的值即可。
统计字符串中字母、数字、空格和其他字符的个数 编写一个函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其他字符的个数,在主函数中输入字符串以及输出上述的结果。
好的,这是一个技术问题,我可以回答。以下是统计函数的示例代码:
```
#include <stdio.h>
void count_char(char *str)
{
int letters = 0, digits = 0, spaces = 0, others = 0;
int i = 0;
while(str[i] != '\0')
{
if((str[i]>='a' && str[i]<='z') || (str[i]>='A' && str[i]<='Z'))
{
letters++;
}
else if(str[i]>='0' && str[i]<='9')
{
digits++;
}
else if(str[i]==' ')
{
spaces++;
}
else
{
others++;
}
i++;
}
printf("字母个数:%d\n", letters);
printf("数字个数:%d\n", digits);
printf("空格个数:%d\n", spaces);
printf("其他字符个数:%d\n", others);
}
int main()
{
char str[100];
printf("请输入一个字符串:");
fgets(str, 100, stdin);
count_char(str);
return 0;
}
```
该程序先定义了一个统计函数 count_char,函数体内通过循环遍历输入的字符串,判断每一个字符属于字母、数字、空格还是其他字符,分别对应累加计数器。最后,分别输出各类字符的数量即可。
在主函数中,先通过 fgets 函数输入字符串,再调用 count_char 函数进行统计。
阅读全文