利用指针分别统计一串字符中的大、小写字母的个数
时间: 2024-05-16 15:15:48 浏览: 12
好的,这是一个C语言问题。我们可以定义两个变量来分别记录大写字母和小写字母的个数,然后遍历字符串中的每个字符,判断它是大写字母还是小写字母,然后对应地增加计数器的值。
代码如下:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[] = "Hello World";
int upper_cnt = 0, lower_cnt = 0;
char *p = str;
while (*p != '\0') {
if (isupper(*p)) {
upper_cnt++;
} else if (islower(*p)) {
lower_cnt++;
}
p++;
}
printf("The number of uppercase letters is %d\n", upper_cnt);
printf("The number of lowercase letters is %d\n", lower_cnt);
return 0;
}
```
输出结果为:
```
The number of uppercase letters is 2
The number of lowercase letters is 8
```
注意,我们使用了C语言中的isupper和islower函数来判断字符是否为大写字母或小写字母。
相关问题
利用指针分别统计一串字符中的大、小写字母的个数。
下面是一个利用指针分别统计一串字符中的大、小写字母的个数的示例代码:
```c
#include <stdio.h>
void count_letters(char *str, int *lowercase, int *uppercase) {
while (*str != '\0') {
if (*str >= 'a' && *str <= 'z') {
(*lowercase)++;
} else if (*str >= 'A' && *str <= 'Z') {
(*uppercase)++;
}
str++;
}
}
int main() {
char str[] = "Hello World!";
int lowercase = 0, uppercase = 0;
count_letters(str, &lowercase, &uppercase);
printf("Lowercase letters: %d\n", lowercase);
printf("Uppercase letters: %d\n", uppercase);
return 0;
}
```
在上面的代码中,我们定义了一个 `count_letters()` 函数,该函数接受一个指向字符串的指针和两个指向整数的指针作为参数。函数使用 `while` 循环遍历字符串中的每个字符,如果字符是小写字母,则增加 `lowercase` 的值,如果字符是大写字母,则增加 `uppercase` 的值。在 `main()` 函数中,我们声明一个字符串 `str`,以及两个整数 `lowercase` 和 `uppercase`,并将它们的地址作为参数传递给 `count_letters()` 函数。最后,我们使用 `printf()` 函数输出统计结果。
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>`。