
上QQ阅读APP看书,第一时间看更新
二、动手练:元音字母计数
(一)实验目的
用户输入一个英文单词或者一句话,程序统计出现了多少个元音字母。
(二)基本思路
元音字母共有5个,即a,e,i,o,u。我们先计算出输入字符串的长度,然后从第一个字符开始,逐个判断是否是元音字母;如果是,则把元音字母计数器增加1。
(三)编程步骤
(1)角色设计
我们使用默认角色小猫。
(2)变量设计
我们创建如下变量:
- 变量
pos
:表示字符串中的一个位置。 - 变量
ch
:表示输入字符串在pos
位置上的那个字符。 - 变量
vowelCount
:表示输入字符串中元音字母的个数。
(3)过程描述与脚本展示
首先,将位置pos
初始化为1,元音字母数vowelCount
初始化为0;然后重复执行如下步骤:
- 将
ch
设为输入字符串的第pos
个位置上的字符。 - 如果
ch
和a,e,i,o,u其中之一相等,则将vowelCount
增加1。 - 将
pos
增加1,以考虑下一个字符。
字符串有多少字符,我们就重复多少次(见图9-2)。

图9-2 统计元音字母数的程序
(四)实验结果
我输入了我们SIGMA数学和算法兴趣班上小朋友的名字的汉语拼音,程序运行结果正确,名字中有空格也没关系(见表9-1)。
我发现包若宁的名字中有5个元音字母,是最多的;张秦汉的名字里只有3个元音字母,是最少的。这是因为我们的名字都是3个字的,基本上一个字里的韵母里有1~2个元音字母。
表9-1 SIGMA兴趣组同学的姓名中的元音字母数
