第1关:英文文学作品字母统计
时间: 2024-05-09 12:01:54 浏览: 15
这道题目要求我们读入一个英文文学作品,然后统计其中每个字母出现的次数,并且按照字母表顺序输出结果。下面是一份示例代码,可以完成这道题目的要求:
```python
import string
# 读取文件内容
with open('literature.txt', 'r') as f:
content = f.read().lower()
# 统计每个字母出现的次数
count = {}
for letter in string.ascii_lowercase:
count[letter] = content.count(letter)
# 按照字母表顺序输出结果
for letter in string.ascii_lowercase:
print('{}: {}'.format(letter, count[letter]))
```
在这份代码中,我们首先使用 `with open()` 语句读取了指定文件中的内容,并将其转换为小写字母形式,方便后面的统计操作。
然后,我们使用 `string.ascii_lowercase` 获取了所有的小写字母,并使用一个空的字典 `count` 来记录每个字母出现的次数。
最后,我们遍历所有的小写字母,按照字母表顺序输出每个字母出现的次数。注意,这里我们使用了 `format()` 方法来格式化输出结果,以便美观地展示每个字母的统计信息。
相关问题
第6关:STL模板之键值对容器实例:基于map统计26个字母出现频率
好的,让我们来解决这个问题。
这个问题可以通过使用 STL 中的 map 容器来解决。map 是一个关联容器,它存储一组键值对,并且可以根据键快速查找对应的值。我们可以使用 map 来统计每个字母出现的频率。
以下是一个简单的实现:
```cpp
#include <iostream>
#include <map>
#include <string>
int main() {
std::string s = "Hello, world!";
std::map<char, int> freq;
for (char c : s) {
if (isalpha(c)) {
freq[tolower(c)]++;
}
}
for (char c = 'a'; c <= 'z'; c++) {
std::cout << c << ": " << freq[c] << std::endl;
}
return 0;
}
```
在上面的代码中,我们首先定义了一个字符串 s 和一个空的 map 容器 freq。然后,我们遍历字符串中的每个字符,如果该字符是字母,我们就将其转换成小写字母,并将其对应的计数器加一。最后,我们遍历所有字母,并输出它们的计数器值。
这个程序的输出应该是:
```
a: 0
b: 0
c: 0
d: 1
e: 1
f: 0
g: 0
h: 1
i: 0
j: 0
k: 0
l: 3
m: 0
n: 0
o: 2
p: 0
q: 0
r: 1
s: 0
t: 0
u: 0
v: 0
w: 1
x: 0
y: 0
z: 0
```
这个程序可以统计任何字符串中每个字母出现的频率。只需要将字符串 s 替换成你要统计的字符串即可。
第4关:统计字符类别个数c
题目描述:
给定一个字符串s,统计其中大写字母、小写字母、数字和其他字符的个数。
输入:
一个字符串s,长度不超过1000。
输出:
四个整数,分别表示大写字母、小写字母、数字和其他字符的个数,用空格隔开。
示例:
输入:
aBc123!
输出:
1 2 3 1
输入样例:
Hello World!
输出样例:
1 9 0 2
输入样例:
aBc123!
输出样例:
1 2 3 1
思路:
遍历字符串,根据 ASCII 码进行分类计数即可。
代码实现:
相关推荐
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.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)