课程首页 › 第2部分 › 第26课

第26课 投票计数器

第2部分 智能的开始 · 选择结构· 知识点:三目运算符

投票计数器(三目运算符)

在编程小镇居民大会上,居民们需要进行关于是否建设一个新图书馆的投票。这个决定对小镇的未来非常重要,因此每个居民都要表达自己的意见。为了确保投票过程的简便和透明,小镇决定使用一款高科技的投票计数器程序。

y or n居民们都聚集在大厅里,紧张而兴奋地等待投票的开始。

主持人站在舞台上,向大家宣布:

“亲爱的居民们,欢迎参加投票大会!我们将决定是否建设一座新的图书馆。为了确保每个人都有机会表达自己的意见,将使用一款投票计数器程序来记录投票结果。”

“现在,请大家拿出投票卡,并在上面输入你们的选择:‘y’表示赞成,‘n’表示反对,其他表示弃权。程序会自动记录大家的投票结果。等大家都投完,我将按下‘q’键退出投票,进行票数统计并公布。”

温故知新

插图

运行程序:

开始投票:

赞同票数:3不赞同票数:2弃权票数:1

(1)运用if - else if - else针对不同的输入字符进行票数统计。

(2)++表示自加加,如果输入的是y,那么agree增加1;如果输入的是n,那么disagree增加1;如果输入的是q,那么执行break跳出循环;输入其他内容视为弃权。

奇数偶数新写法

插图

划重点

对比学习if - else和? :。

if-else:

插图

三目运算符? ::

插图

语法结构:condition ? true_expression:false_expression。

翻译助力理解

●condition:条件。

●expression:表达式。

语法结构:条件?条件为true执行此表达式或语句:条件为false执行此表达式或语句。

三目运算符的嵌套

插图

if-else if-else替换成三目运算符的嵌套

①if-else if-else:

插图

巩固练习

(1)三目运算符的结构格式是什么?()

A.if(condition){statement1}else{statement2}

B.condition ? statement1 : statement2

C.while(condition){statement}

D.for(int i=0; i<10; i++){statement}

(2)下面哪个语句是使用三目运算符来计算一个数的绝对值?()

A.int absValue=num<0 ? -num : num; B.int absValue=num>0 ? - num : num; C.int absValue=num + 1 ? -num : num; D.int absValue=num ? -num : num;(3)运用三目运算符编写一个C++程序,接收用户输入的一个字符。如果输入的字符是大写字母,则将它转换为小写字母;如果输入的字符不是大写字母,则保持不变。输出最后得到的字符。

插图