1.4.4 一维数组应用实例

本节将讨论若干一维数组的应用实例,这些例子本身也很有趣。

1. 扑克牌的表示

假设我们想编写一个扑克牌游戏的程序,则首先可编写如下代码:

例如,我们可使用上述两个数组随机输出一张牌,如梅花Q,代码片段如下:

另一种典型的情况是计算并抽取一组值存储到一个数组。例如,使用上述两个数组初始化长度为52的数组(代表一副牌)的代码片段如下所示:

执行上述代码片段后,按deck[0]到deck[51]的顺序,输出数组deck[]的各元素,每个元素占一行,结果如下:

2. 交换(Exchange)

程序中常常需要交换数组中的两个元素。继续以扑克牌游戏为例,如下代码片段使用本节前述的方法交换索引下标i和j的纸牌:

上述代码片段用于改变元素的顺序,但不改变数组中元素的集合。当i和j相等时,数组保持不变;当i和j不相等时,执行代码后,a[i]和a[j]指向不同的位置。例如,如果执行上述代码片段时,i等于1,j等于4,并基于前文例子中的数组deck[],执行结果为:deck[1]的值为字符串'3 ...

Get 程序设计导论:Python语言实践 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.