用C语言编辑一个函数,功能:用户输入一行字符串,统计此字符串中每一个小写字母出现的次数,并分别打印
时间: 2024-03-14 12:47:46 浏览: 48
好的,以下是一个实现上述功能的 C 语言函数:
```c
#include <stdio.h>
void count_lowercase(char str[]) {
int counts[26] = {0}; // 用于统计每个小写字母出现的次数,初始值为 0
// 遍历字符串中的每个字符
for (int i = 0; str[i] != '\0'; i++) {
char c = str[i];
if (c >= 'a' && c <= 'z') { // 如果该字符是小写字母
counts[c - 'a']++; // 统计该字母出现的次数
}
}
// 打印每个小写字母出现的次数
for (int i = 0; i < 26; i++) {
if (counts[i] > 0) { // 只打印出现过的字母
printf("%c: %d\n", 'a' + i, counts[i]);
}
}
}
```
使用方法:
```c
int main() {
char str[100];
printf("请输入一个字符串:");
gets(str); // 或者使用 scanf("%s", str);,但 gets 更安全一些
count_lowercase(str);
return 0;
}
```
注意:
1. 函数中的 `counts` 数组用于统计每个小写字母出现的次数,数组下标从 0 开始,表示 a 到 z 这 26 个小写字母。例如,counts[0] 表示字母 a 出现的次数,counts[1] 表示字母 b 出现的次数,以此类推。
2. 在 `count_lowercase` 函数中,我们遍历字符串中的每个字符,如果该字符是小写字母,则将对应的计数器加 1。为了方便,我们使用了 ASCII 码来判断一个字符是否是小写字母。具体而言,ASCII 码中字母 a 的值为 97,字母 b 的值为 98,以此类推。因此,如果一个字符的 ASCII 码在 97 到 122 之间,就表示它是小写字母。
3. 最后,我们再次遍历 `counts` 数组,打印每个小写字母出现的次数。需要注意的是,只有出现过的字母才需要打印出来。
阅读全文
相关推荐
![txt](https://img-home.csdnimg.cn/images/20241231045021.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)