在一个美丽的森林里,住着一只聪明的小松鼠小橙,如图4.17所示。每年冬天,它都会储备很多的松果,吃都吃不完,甚至还会将一些松果送给其他松鼠。一天,松鼠小红问它:“也不见你忙碌地准备冬天的粮食,为什么还有这么多,甚至可以给我们分。”小橙说:“一到秋天我就开始收集松果了,每天都会收集3个,这样既不忙碌,到冬天也会有很多。”
根据小橙储备松果的描述,编写一个程序,输出3天后小橙收集了多少个松果。此功能可以使用复合赋值运算符实现,其步骤如下。
(1)定义一个变量cnt,存储收集到的松果数。
(2)第1天收集了3个松果,所以将cnt直接赋值为3。
(3)第2天又收集了3个松果,在第1天的基础上加上3。
(4)第3天又收集了3个松果,在第2天的基础上加上3。
(5)输出松果的个数。
根据实现步骤,绘制流程图,如图4.18所示。
图4.17 松鼠过冬
图4.18 输出松果个数流程图
根据流程图,编写代码,计算并输出松果的个数。代码如下:
代码执行后的效果如下:
第3天共有9个松果
在进行算术运算时,如果赋值运算符左右两侧存在相同的变量(图4.19),就可以使用复合赋值运算符简化代码。
为了提高运算效率和简化代码,C++语言提供了复合赋值运算符,也称扩展赋值运算符。该类型运算符有五种,见表4.2。
表4.2 复合赋值运算符
复合赋值运算符的思维导图如图4.20所示。
图4.19 相同的变量
图4.20 思维导图
(1)“+=”运算符称为______运算符。
(2)a-=3的功能是将a-3的值放在_____中。