题目分析
本题是一道 while 循环基础练习题,没有输入,核心任务是输出从1到12的全部整数,每一个数字单独占一行。题目强制要求使用 while 循环实现,不能直接使用 for 循环完成。
解题思路
1. 首先需要准备一个计数器变量,这个变量用来保存当前需要打印的数字。因为我们从数字1开始输出,所以计数器的初始值设置为1。
2. while循环依靠判断条件决定要不要继续执行循环体内的代码。我们的输出范围是1到12,所以循环条件设置为:计数器的值小于或者等于12。只要条件成立,就执行循环里面的内容;一旦条件不成立,循环直接结束。
3. 循环体里面要做两件事:第一件,把当前计数器里面的数字打印出来,打印完成会自动换行,满足题目换行隔开的要求;第二件,把计数器的值增加1,准备处理下一个数字。
4. 流程完整走一遍:一开始计数器=1,条件成立,输出1,计数器变成2;接着条件成立输出2,计数器变成3……一直到计数器等于12,条件成立,输出12,计数器自增变成13。
5. 此时再次判断while的条件,13≤12不成立,循环终止,所有数字全部输出完毕,程序结束。
易错点提醒
1. 计数器初始值不能设置成0,如果初始为0,会多输出0,少输出12。
2. 循环条件不能写成计数器小于12,如果写小于12,最大只会输出11,漏掉数字12。
3. 循环内部千万不要忘记计数器加1。如果缺少这一步,计数器永远是1,循环条件永远成立,程序会陷入死循环,不停打印数字1。
4. 必须使用while循环答题,使用for循环会不符合题目要求,判题无法通过。
输出效果
程序运行结束,控制台会依次打印12行内容,每行一个数字:
第1行输出1,第2行输出2,第3行输出3……依次往后,最后一行输出12。
代码: