下面 C++ 代码执行后的输出是( )。
int i, j;
for (i = 0; i < 5; i++)
for (j = i; j > 0; j -= 1)
printf("%d-", j);答案A。追踪程序输出时注意整数除法截断和循环条件的边界值。变量初始值对结果影响很大。
整数除法截断容易忽略!if(n%i==0)中%是取余运算不是除法。
【考点】嵌套循环|循环条件判定|循环终止边界
GESP二级第11题,考查《C++程序设计基础》中"循环结构"模块。命题人栽倒的是循环条件判断——绝大多数考生看到j > 0就下意识认为会输出0,完全没注意"大于"这个严格不等号。