深大c语言oj求一行字符中字母,数字的分别个数
时间: 2024-11-06 20:19:05 浏览: 25
在C语言的在线评测系统(OJ)中,要求计算一行字符中字母和数字的个数,通常需要遍历字符串并检查每个字符是否属于字母或数字。可以使用ASCII码来进行判断。以下是一个简单的步骤:
1. 定义两个变量,`alpha_count`记录字母个数,`digit_count`记录数字个数,初始化为0。
2. 使用`for`循环遍历字符串(假设名为`str`),对于每一个字符`ch`:
a. 如果`ch`在'a'到'z'(小写字母)或'A' to 'Z'(大写字母)范围内,增加`alpha_count`;
b. 否则,如果`ch`在'0'到'9'范围内(数字字符),增加`digit_count`;
3. 循环结束后,`alpha_count`和`digit_count`就是所求的字母和数字个数。
示例代码如下:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
fgets(str, sizeof(str), stdin); // 从标准输入读入一行字符串
int alpha_count = 0, digit_count = 0;
for (int i = 0; str[i] != '\0'; i++) {
if (isalpha(str[i])) {
alpha_count++;
} else if (isdigit(str[i])) {
digit_count++;
}
}
printf("字母个数: %d\n", alpha_count);
printf("数字个数: %d\n", digit_count);
return 0;
}
```
阅读全文