/*键盘录入一个字符串. 例如: 1a5df78AS95; 求出字符串中 有几个是数字; 求出字符串中 有几个是大写字母; 求出字符串中 有几个是小写字母;*/
时间: 2024-02-20 13:58:22 浏览: 70
好的,针对您的问题,可以使用以下代码实现:
```
#include <stdio.h>
#include <ctype.h>
int main()
{
char str[100];
int digit_count = 0, upper_count = 0, lower_count = 0;
printf("请输入一个字符串:");
scanf("%s", str);
for (int i = 0; str[i] != '\0'; i++)
{
if (isdigit(str[i]))
digit_count++;
else if (isupper(str[i]))
upper_count++;
else if (islower(str[i]))
lower_count++;
}
printf("数字个数:%d\n", digit_count);
printf("大写字母个数:%d\n", upper_count);
printf("小写字母个数:%d\n", lower_count);
return 0;
}
```
其中,使用了 `isdigit` 函数判断是否为数字,使用了 `isupper` 函数判断是否为大写字母,使用了 `islower` 函数判断是否为小写字母。
相关问题
C语言 从键盘录入一个字符串,统计该串中字母、数字各有多少个
在C语言中,你可以使用`getchar()`函数从键盘读取字符,然后遍历这个字符串,同时检查每个字符是否为字母或数字。这里是一个简单的示例程序,它会统计字符串中的字母和数字数量:
```c
#include <stdio.h>
#include <ctype.h> // 包含用于判断字符类型的功能
int main() {
int letter_count = 0;
int digit_count = 0;
char ch;
printf("请输入一个字符串: ");
while ((ch = getchar()) != '\n') { // 防止读取换行符
if (isalpha(ch)) { // 判断字符是否为字母(包括大小写)
letter_count++;
} else if (isdigit(ch)) { // 判断字符是否为数字
digit_count++;
}
}
// 打印结果
printf("字母数量: %d\n", letter_count);
printf("数字数量: %d\n", digit_count);
return 0;
}
```
在这个程序中,`isalpha()`函数用来检测字符是否为字母,`isdigit()`函数则用来检测字符是否为数字。当你运行这个程序时,它会提示你输入一个字符串,结束后会显示其中字母和数字的数量。
键盘录入一个字符串。统计该字符串中大写字母字符,小写字母字符,数字字符出现的次数
当你输入一个字符串时,可以很容易地统计其中大写字母、小写字母以及数字字符的数量。这通常通过遍历字符串并检查每个字符的ASCII码值来完成。以下是步骤:
1. 初始化计数器变量,比如`upper_count`用于记录大写字母,`lower_count`用于小写字母,`digit_count`用于数字。
2. 遍历字符串中的每一个字符 `c`:
- 对于大写字母,你可以检查 `('A' <= c && c <= 'Z')`,如果是,则增加`upper_count`。
- 对于小写字母,检查 `('a' <= c && c <= 'z')`,如果是,则增加`lower_count`。
- 对于数字,检查 `('0' <= c && c <= '9')`,如果是,则增加`digit_count`。
3. 完成遍历后,这三个计数器将分别表示各自字符类型的出现次数。
举个简单的Python示例:
```python
def count_chars(s):
upper_count = lower_count = digit_count = 0
for c in s:
if 'A' <= c <= 'Z':
upper_count += 1
elif 'a' <= c <= 'z':
lower_count += 1
elif '0' <= c <= '9':
digit_count += 1
return upper_count, lower_count, digit_count
# 使用例子
input_str = "Hello World! 123"
upper, lower, digits = count_chars(input_str)
print("大写字母:", upper)
print("小写字母:", lower)
print("数字字符:", digits)
```
阅读全文