c语言利用指针分别统计一串字符中的大、小写字母的个数。
时间: 2024-04-30 13:18:25 浏览: 94
下面是一个示例程序,可以统计一串字符中大写字母和小写字母的个数:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int i, upper_count = 0, lower_count = 0;
printf("请输入一串字符:");
fgets(str, 100, stdin);
for (i = 0; str[i] != '\0'; i++) {
if (isupper(str[i])) {
upper_count++;
} else if (islower(str[i])) {
lower_count++;
}
}
printf("大写字母个数:%d\n", upper_count);
printf("小写字母个数:%d\n", lower_count);
return 0;
}
```
程序首先读入一串字符,然后使用 for 循环遍历字符串中的每个字符,通过调用 ctype.h 头文件中的 isupper 和 islower 函数来判断当前字符是否为大写字母或小写字母,如果是则对应计数器加 1。最后输出统计结果。
相关问题
c语言利用指针分别统计一串字符中的大、小写字母的个数
下面是一个用指针实现的统计字符串中大、小写字母个数的示例代码:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int uppercase = 0, lowercase = 0;
char *p;
printf("请输入一个字符串:");
fgets(str, 100, stdin);
p = str;
while (*p != '\0') {
if (isupper(*p))
uppercase++;
else if (islower(*p))
lowercase++;
p++;
}
printf("大写字母个数:%d\n", uppercase);
printf("小写字母个数:%d\n", lowercase);
return 0;
}
```
程序先定义了一个字符数组 `str` 和两个整型变量 `uppercase` 和 `lowercase`,分别用于记录大写字母和小写字母的个数。然后声明了一个字符指针 `p`,并将其初始化为 `str` 的地址。
接下来使用 `fgets()` 函数从控制台读入一个字符串,并通过指针 `p` 遍历字符串中的每个字符。在遍历过程中,如果当前字符是大写字母,则 `uppercase` 变量加 1;如果是小写字母,则 `lowercase` 变量加 1。最后输出统计结果即可。
需要注意的是,这里使用了 C 标准库中的 `isupper()` 和 `islower()` 函数来判断字符是否是大写字母或小写字母。这些函数需要包含头文件 `<ctype.h>`。
用C语言实现:4.利用指针分别统计一串字符中的大、小写字母的个数。
下面是用C语言实现统计一串字符中的大、小写字母的个数的代码:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int upper = 0, lower = 0;
char *p;
printf("请输入一串字符:");
fgets(str, 100, stdin);
p = str;
while (*p) {
if (isupper(*p)) {
upper++;
} else if (islower(*p)) {
lower++;
}
p++;
}
printf("大写字母个数:%d\n", upper);
printf("小写字母个数:%d\n", lower);
return 0;
}
```
首先,定义一个字符数组 `str` 存储输入的一串字符,定义两个变量 `upper` 和 `lower` 分别用于统计大写字母和小写字母的个数,定义一个字符指针 `p` 指向字符数组 `str`。
然后,使用 `fgets` 函数从标准输入(键盘)读取一串字符,最多读取 100 个字符,存储到 `str` 数组中。
接着,使用 `while` 循环遍历字符数组 `str` 中的每个字符,如果是大写字母,则 `upper` 自增 1,如果是小写字母,则 `lower` 自增 1。
最后,输出大写字母个数和小写字母个数。
需要注意的是,判断字符是否是大写字母或小写字母需要使用 `ctype.h` 头文件中的 `isupper` 和 `islower` 函数。
阅读全文