下面 C++ 代码实现输出如下图形,应该在横线处填入的代码是( )。
请输入层数:10
1
23
456
7891
23456
789123
4567891
23456789
123456789
1234567891cout << "请输入层数:";
cin >> N;
K = 1;
for (i = 1; i < N + 1; i++){
for (int _ = 1; _ < __________; _++)
cout << " ";
for (int _ = 1; _ < __________; _++){
cout << K;
K += 1;
if (K == 10)
K = 1;
}
cout << '\n';
}A.
N - i + 1
i + 1B.
N - i
iC.
N
iD.
N - i
i + 1答案A。循环补全要分析循环变量的初始值、条件和更新方式,确保能产生目标输出。
代入法验证时注意选项之间的细微差别。循环条件中的<和<=可能导致完全不同的结果。
【考点】循环控制|边界条件计算|循环嵌套
GESP二级算法模块"循环结构综合"——这题卡住考生的是循环边界条件:外层循环 i 从 1 到 N,内层两个循环的终止条件必须与 i 和 N 的差值/关系严格对应,很多考生误以为空格数恒定或数字个数固定。