下面 C++ 代码用于记录多个输入数中的最大数和最小数(输入 $-999$ 则输入结束),相关说法错误的是( )。
cin >> now_num;
min_num = max_num = now_num;
while (now_num != -999){
if (max_num < now_num)
max_num = now_num;
if (min_num > now_num)
min_num = now_num;
cin >> now_num;
}
cout << min_num << ' ' << max_num;答案D。while循环先判断条件再执行,可能一次都不执行。do-while至少执行一次。
while先判断后执行,可能0次。do-while先执行后判断,至少1次。
【考点】输入输出|循环控制|变量初始化
GESP一级《程序基础》模块第3章循环控制。命题人专盯变量初始化时机——90%考生凭直觉选D,却忽略未定义变量风险,这是程序基础模块最典型的"顺序陷阱"考题,卡住所有只背语法不读代码的学生。