|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- n = int(input(" 请输入三角形的层数:")) #输入10
- i = 1
- while i < n : # 1 < 10 开始循环
- j = 0
- while j < n - 1: # 0 < 10 - 1
- print("",end="") # 这里输出的是什么
- j = j + 1 # 循环1次 是 1
- j = 0 # 这里j = 0 这里为什么又要加 j = 0
- while j < (2 * i) - 1 : # j < 2*1 - 1
- print("*",end="") # 输出一个* 换行
- j = j + 1 # j = j + 1 这里应该是 2
- print("")
- i = i + 1
复制代码
代码都看得懂 运行原理不是很理解,求大佬解惑
- n = int(input(" 请输入三角形的层数:"))
- i = 1
- while i < n : # 1 < n 则进入循环,否则跳出循环----判断分支1,跳出循环后执行与while齐平的代码
- j = 0
- while j < n - 1: # 0 < n-1则进入循环,否则跳出循环-----判断分支2
- # 这里打印一个什么都没有的"",后面的end=""就是去掉了换行,print()函数默认的end='\n',也就是换行符
- # 例如 print('hello world!'),它是打印'hello world!'字符串+换行符号
- # 具体的可以在shell窗口输入help(print)查看,sep=' '表示print()函数打印多个内容默认用空格隔开
- # 例如print(1,2,3),它打印1 2 3,而不是123。print(1,2,3,sep='')则是打印123
- # 下面的print()函数实际上什么都没干。。。
- print("",end="")
- j = j + 1
- # 每循环1次,j默认自加1。-------本行代码执行完,会返回循环分支头部,再次判断是否进入循环
- # 例如这里的缩进对应循环----判断分支2
- j = 0 # 判断分支2以后,j应该是等于n-2,这里又赋值为0,这什么神仙操作?
- while j < (2 * i) - 1 : # j < 2*1 - 1则进入循环
- print("*",end="") # 输出一个* ,不换行
- j = j + 1 # 看上面的解释吧
- print("") # 这个其实就是打印个换行符
- i = i + 1
复制代码
|
|