任务描述: 输入一行英文句子(不超过100个字符),输出这个句子中的英文字母(Letter)、数字(Digit)和其它字符(Symbol)(空格标点符号等)的个数。 输入样例: ABCDEF12345,.A:1<5== 输出样例: Letter:7 Digit :7 Symbol:6 注意每行最后没有空格,写一个C语言程序
时间: 2023-06-17 10:01:56 浏览: 1208
下面是一个简单的 C 语言程序实现:
```c
#include <stdio.h>
#include <ctype.h>
int main()
{
char str[101];
int letter = 0, digit = 0, symbol = 0;
fgets(str, 101, stdin); // 从标准输入读入一行字符串
for (int i = 0; str[i] != '\0'; i++) {
if (isalpha(str[i])) {
letter++;
} else if (isdigit(str[i])) {
digit++;
} else {
symbol++;
}
}
printf("Letter:%d Digit:%d Symbol:%d\n", letter, digit, symbol);
return 0;
}
```
程序中用到了 `ctype.h` 库中的 `isalpha()` 和 `isdigit()` 函数来判断字符类型,用一个循环遍历字符串中的每个字符,统计字母、数字和符号的个数,最后输出结果。
相关问题
输入一行英文句子(不超过100个字符),输出这个句子中的英文字母(Letter)、数字(Digit)和其它字符(Symbol)(空格标点符号等)的个数。 输入样例: ABCDEF12345,.A:1<5== 输出样例: Letter:7 Digit :7 Symbol:6
要实现这个功能,你需要编写一个C程序,遍历输入的字符串并根据字符类型进行计数。以下是一个简单的实现:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char input[101];
int letter_count = 0, digit_count = 0, symbol_count = 0;
// 输入一行英文句子
fgets(input, sizeof(input), stdin);
// 去掉末尾的换行符
input[strcspn(input, "\n")] = '\0';
// 遍历字符串并统计字符类型
for (char c : input) {
if (isalpha(c)) { // 检查是否为字母
letter_count++;
} else if (isdigit(c)) { // 检查是否为数字
digit_count++;
} else { // 其他字符(包括空格、标点符号)
symbol_count++;
}
}
// 输出结果
printf("Letter: %d\n", letter_count);
printf("Digit: %d\n", digit_count);
printf("Symbol: %d\n", symbol_count);
return 0;
}
```
在这个程序中,我们使用了`ctype.h`库中的`isalpha()`和`isdigit()`函数来检查字符是否为字母或数字。非字母和数字的其他字符会被视为符号。
运行此程序时,请确保不要超过100个字符的限制,并通过标准输入提供英文句子。例如,在命令行中,你可以这样输入:
```
ABCDEF12345,.A:1<5==
```
然后按回车键。程序将显示每个类型的字符数量。
本题要求编写程序,输入10个字符,统计其中英文字母、数字字符和其他字符的个数。 输入格式: 输入为10个字符。最后一个回车表示输入结束,不算在内。 输出格式: 在一行内按照 letter = 英文字母个数, digit = 数字字符个数, other = 其他字符个数 的格式输出。请注意,等号的左右各有一个空格,逗号后有一个空格。
好的,这是一个简单的字符统计程序,可以用以下的 Python 代码实现:
```python
s = input() # 输入10个字符
letter = 0 # 记录英文字母个数
digit = 0 # 记录数字字符个数
other = 0 # 记录其他字符个数
# 遍历输入字符串的每个字符,统计个数
for c in s:
if c.isalpha(): # 判断是否为英文字母
letter += 1
elif c.isdigit(): # 判断是否为数字字符
digit += 1
else:
other += 1
# 输出统计结果
print("letter = {}, digit = {}, other = {}".format(letter, digit, other))
```
你可以在命令行输入10个字符,然后运行这个程序,它会输出统计结果。注意,输入的最后一个回车符不算在输入字符中。
阅读全文