读入一句话统计26个大写字母个字出现的次数
时间: 2023-11-14 13:04:23 浏览: 31
可以使用一个长度为 26 的数组来记录每个大写字母出现的次数。
具体实现可以按照以下步骤进行:
1. 定义一个长度为 26 的数组 `count`,用于记录每个大写字母出现的次数,初始值都为 0。
2. 读入一句话,可以使用 `input()` 函数获取用户输入的字符串。
3. 遍历字符串中的每个字符,如果该字符是大写字母,则将对应的计数器加 1。
4. 遍历结束后,输出每个大写字母出现的次数。
以下是具体的代码实现:
```python
count = [0] * 26 # 初始化计数器数组
s = input() # 读入一句话
for c in s:
if 'A' <= c <= 'Z': # 如果是大写字母
count[ord(c) - ord('A')] += 1 # 对应计数器加 1
for i in range(26):
print(chr(ord('A') + i), count[i])
```
其中,`ord(c)` 函数可以将字符 `c` 转换成对应的 ASCII 码值,因此 `ord(c) - ord('A')` 就可以得到该字母在计数器数组中的位置。
相关问题
输入一行字符,统计其中各个大写字母出现次数C语言输出
好的,我可以帮您解答这个问题。
以下是 C 语言的代码示例:
```c
#include <stdio.h>
int main() {
int count[26] = {0}; // 初始化计数器数组为0
char str[100];
printf("请输入一行字符:\n");
fgets(str, 100, stdin); // 从标准输入读入一行字符
int i = 0;
while (str[i] != '\0') {
if (str[i] >= 'A' && str[i] <= 'Z') {
count[str[i] - 'A']++; // 找到一个大写字母,计数器加1
}
i++;
}
printf("各个大写字母出现次数如下:\n");
for (int j = 0; j < 26; j++) {
printf("%c:%d\n", 'A' + j, count[j]);
}
return 0;
}
```
以上代码使用了一个长度为 26 的整型数组 count,用来计算每个大写字母的出现次数。输入的一行字符通过 fgets 函数读入,然后逐个字符扫描,如果发现一个大写字母,就增加相应字母在计数器数组中的计数。最后输出所有大写字母的出现次数。
希望这个示例代码能够帮到您!
c++输入一个字符串统计大写字母和小写字母的总个数
可以使用C++中的字符函数isupper和islower来判断一个字符是不是大写字母或小写字母。具体实现可以参考以下代码:
```
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char str[100];
int upperCount = 0, lowerCount = 0;
cout << "请输入一个字符串:";
cin.getline(str, 100);
int len = strlen(str);
for (int i = 0; i < len; i++) {
if (isupper(str[i])) {
upperCount++;
} else if (islower(str[i])) {
lowerCount++;
}
}
cout << "大写字母个数:" << upperCount << endl;
cout << "小写字母个数:" << lowerCount << endl;
return 0;
}
```
这段代码中,我们先定义了一个字符数组str和两个变量upperCount和lowerCount来分别统计大写字母和小写字母的个数。然后通过cin.getline函数从控制台读入一个字符串。接下来使用for循环遍历字符串中的每个字符,如果是大写字母则将upperCount加1,如果是小写字母则将lowerCount加1。最后输出统计结果。