|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 theoderic 于 2017-10-18 12:00 编辑
结论:请大大帮忙看,我自己解释的while循环是否正确
原因:不了解实际循环,跑的顺序。已经爬文与上网找资料,但仍似懂非懂;
问题:
如下例:
While A:
while a:
while b;
while c:
内循环是否是先跑完while a,直到a = False后再跑 while b;while b = False 才跑while c 呢??
---------------------------------------------------------------------------------------------------------------------------
自行解釋的部分為紅色字:
temp = input('请输入一个整数:')
number = int(temp)
while number: #当WHILE number =0 为Fales時,number循环停止。
i = number - 1 #i循环设定i = number -1
while i: #当i循环 i =0,为Fales,i循环停止
print(' ', end = '') #当i 跑第一次时,先空格,不跳行。
i = i - 1 #i循环每跑一次,则i 另外被赋值 i - 1
------继续用第一次设定的number值,执行完I循环完毕后,再跑第一次设定的number值,跑J循环-----
j = number #设定j = number
while j: #当WHILE j= 0时,为Fales,J循环停止
print('*', end = '') #接着i圈跑第一次时,打印*,不跳行。
j = j - 1 #j循环每跑一次,则i 另外被赋值j - 1
- ----继续用第一次设定的number值,执行完J循环完毕后,再跑第一次设定的number值,跑number循环-----
print() #number循环,打印跳行
number = number - 1 #number循环每跑一次,则number另外被赋值number - 1
- ----回到全区While跑第二次设定的number值-----
如输入 number = 2
1.number循环 number = 2
---->i循环(因i =number-1, while i = 1为真,故打印空格(同一LINE,接着下一j循环))
---->j循环(因j = number ,while j = 2为真,故打印*(并接着number循环));并将j = j -1;
---->j循环(因j = j -1 故while j = 1为真,故打印*(并接着number循环));并将j = j -1;
---->j循环(因j = j -1 故while j = 0为假,故停止循环
---->number改为 mumber -1 ,故继续number跑第2次
2.number循环 number = 1
---->i循环(因i =number-1, while i = 0为假,故停止循环,并进行J循环
---->j循环(因j = number ,while j = 1为真,故打印*(不跳行,继续J循环);并将j = j -1;
---->j循环(因j = j -1 故while j = 0为假,故不打印
---->j循环(因j = j -1 故while j = 0为假,故停止循环
---->number改为 mumber -1 ,继续number跑第3次
3.number循环 number = 0,故停止循环
>>>>
LINE1._**
LINE2.*
感謝!! |
|