下面代码用来找出输入的 $N$ 个正整数中最大的一个。如果将代码段用流程图来表示,则 L1 标记的代码行应该使用的图形是( )。
int N, max=0, val;
cin >> N;
while(N){
cin >> val;
if(val > max) // L1
max = val;
N--;
}
cout << max;答案D。考点: 循环结构——for/while的执行与嵌套。
关键提醒:C++中的^是异或运算符,不是乘方!2^5=7而非32。这是最高频的错误。
【考点】流程图符号|条件判断|GESP二级 编程基础
【考点】流程图符号|条件判断|GESP二级 编程基础。命题人在这道选择题里埋下的第一层陷阱,就是考你"看到代码就跳回答案"的惯性思维。其实这道题的核心不在于 if 本身,而在于它所处的上下文:while(N) 循环体内的条件判断。出题人就是想卡住你"看到 if 就选菱形"的浅层记忆,逼你回看流程图规范——只有条件分支才用菱形。