c语言输入一个字符串,求非字母数字字符的个数
时间: 2024-05-11 11:16:35 浏览: 154
可以使用C语言中的字符串处理函数和循环结构来解决这个问题。以下是一个示例代码:
```
#include <stdio.h>
#include <string.h>
#include <ctype.h>
int main() {
char str[100];
int count = 0;
fgets(str, 100, stdin); // 输入字符串
for (int i = 0; i < strlen(str); i++) {
if (!isalnum(str[i])) {
count++;
}
}
printf("非字母数字字符的个数为%d", count);
return 0;
}
```
在这个代码中,我们首先使用fgets函数从标准输入中读取一个字符串。然后使用循环结构遍历字符串中的每个字符,使用isalnum函数判断该字符是否为字母或数字,如果不是,则计数器加一。最后输出计数器的值即可。
相关问题
c语言输入一个字符串统计其大写字母个数 小写字母个数数字的个数 其他字符的个数
可以使用C语言中的字符数组和循环结构来实现输入字符串并统计各类字符个数的功能。具体实现如下:
```c
#include <stdio.h>
int main()
{
char str[100]; // 定义一个字符数组,用于存储输入的字符串
int i, upper = 0, lower = 0, digit = 0, other = 0;
printf("请输入一个字符串:");
gets(str); // 输入字符串
// 统计各类字符个数
for (i = 0; str[i] != '\0'; i++)
{
if (str[i] >= 'A' && str[i] <= 'Z')
upper++;
else if (str[i] >= 'a' && str[i] <= 'z')
lower++;
else if (str[i] >= '0' && str[i] <= '9')
digit++;
else
other++;
}
// 输出各类字符个数
printf("大写字母个数:%d\n", upper);
printf("小写字母个数:%d\n", lower);
printf("数字个数:%d\n", digit);
printf("其他字符个数:%d\n", other);
return 0;
}
```
在上述代码中,我们先定义了一个字符数组 `str`,用于存储输入的字符串。然后使用 `gets()` 函数从标准输入流中读取该字符串。接着使用 `for` 循环遍历字符串中的每个字符,根据其 ASCII 码值判断其属于哪一类字符,并分别累加其个数。最后输出各类字符的个数即可。需要注意的是,输入的字符串长度不能超过 `str` 数组的容量,否则会出现数组越界的错误。
C语言输入一个字符串输出大小写字母和数字字符的个数
以下是一个C语言程序,它可以输入一个字符串并输出其中大小写字母和数字字符的个数:
```c
#include <stdio.h>
#include <ctype.h>
#include <string.h>
int main() {
char str[100];
int lower = 0, upper = 0, digit = 0;
printf("请输入一个字符串:");
fgets(str, sizeof(str), stdin);
for (int i = 0; i < strlen(str); i++) {
if (islower(str[i])) {
lower++;
} else if (isupper(str[i])) {
upper++;
} else if (isdigit(str[i])) {
digit++;
}
}
printf("小写字母个数:%d\n", lower);
printf("大写字母个数:%d\n", upper);
printf("数字字符个数:%d\n", digit);
return 0;
}
```
这个程序的工作原理如下:
1. 我们首先包含了必要的头文件:`stdio.h` 用于输入输出,`ctype.h` 用于字符处理函数,`string.h` 用于字符串处理函数。
2. 我们定义了一个字符数组 `str` 来存储输入的字符串,以及三个整数变量 `lower`、`upper` 和 `digit` 来分别计数小写字母、大写字母和数字字符。
3. 使用 `fgets` 函数读取用户输入的字符串。
4. 我们使用一个 for 循环遍历字符串中的每个字符:
- 使用 `islower` 函数检查是否为小写字母
- 使用 `isupper` 函数检查是否为大写字母
- 使用 `isdigit` 函数检查是否为数字字符
- 根据检查结果增加相应的计数器
5. 最后,我们打印出小写字母、大写字母和数字字符的个数。
这个程序可以有效地统计输入字符串中大小写字母和数字字符的个数。
阅读全文
相关推荐













