程序的基本结构有哪三种类型,程序的基本结构有哪三种类型图片?

程序组织结构顺序结构、选择结构、循环结构,顺序结构即代码是按顺序从上到下运行。顺序结构相对好理解,下面主要说一下选择结构和循环结构。学而不思则罔,思而不学则殆,小题目测试有利于加强应用能力,本文最后有水仙花数的代码。

本文有四部分:

01

选择结构(if 结构)

02

循环结构(while,for in结构)

03

break、continue、else、pass介绍

04

水仙花数

选择结构

(1)单分支结构

结构大致如下,“else:……”可以没有,只有if。当条件表达式为真时,执行条件执行体。例如,“1==2”是False布尔值为0,因此不会执行条件执行体,而是会执行else中的执行体,即“print('1不等于2')”。

if 条件表达式:
  条件执行体
else:……

if 1==2:
  print('1等于2')
else:
  print('1不等于2')

(2)多分支结构

可以进行多次选择,除了第一个,之后的用elif,不过需要注意,这些分支并不是平行的,而是当前一个不执行的时候,才会继续向下。

if 条件1:
  执行体1
elif 条件2:
  执行体2
elif 条件3:
  执行体4
  ……
elif 条件n:
  执行体n
else:

(3)嵌套if结构

顾名思义,就是在条件执行体中再嵌套一个if,这个可以进行多次嵌套。比较简单,就不进行代码展示了。

(4)简写

单分支结构,if……else……,的简写形式,见下。当条件布尔值为真时,输出x,否则输出y。下面的例子,可以知道,print出的a应该就是0

x if 条件 else y

a=1 if 1==2 else 0
print(a)

循环结构

(1)while 结构

while循环结构见下,如果循环n次,那么需要进行n+1次判断,if只会判断一次。while循环结构需要四步:1.初始化变量;2.条件判断;3.执行循环体;4.改变变量。第四步需要格外注意,如果不对变量进行改变,很有可能会陷入死循环中。

变量初始化定义
while 条件判断式:
  条件循环体
  变量改变

(2)for in 结构

可迭代对象为列表、元组等;如果在循环体中不需要用到自定义变量,那么可以将自定义变量替换为“_”。

for 自定义变量 in 可迭代对象:
  循环体

注:这两个结构同样可以进行多层嵌套来执行循环。

break\continue\else\pass

(1)break

break主要用于循环中,用于打破循环,不再执行循环;一般与 if 配合使用;当代码为多层嵌套,break在内存嵌套时,只能结束所在层的循环。

(2)continue

同样用于循环结构中,不过他是结束本次循环,进行下一次循环。与break有所区别,break相当于不让循环了,而continue是本次循环不用执行之后的东西了。同样的,continue也一般与 if 配合使用,且代码为多层嵌套,continue只能结束所在层的单次循环。

(3)else

else除了上述所讲在 if 选择结构的作用外,还可以出现在while,for in 循环结构中。当用在循环结构中时,如果在循环过程中,没有执行过break,那么就会执行 else 中的代码,反之则不会执行。

水仙花数

水仙花数的定义:一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身。例如:1^3 + 5^3+ 3^3 = 153。

(1)思路一:将数用str()变为字符串,直接获取个位、十位、百位,获取出来的为字符,再用int()转换为数,之后再进行判断是否为水仙花数。获取所有水仙花数,代码见下:

a=100
while a<=999:
    a=str(a)	#将数转换为字符串
    b=a[0]	#将各个位数的数字提取出来,此时还是字符串
    c=a[1]
    d=a[2]
    e=int(b)**3+int(c)**3+int(d)**3		#将各个位数变成数,并计算
    if e==int(a):	#判断是否为水仙花数,注意前面把a变成字符串了,因此这里需要再变成数
        print(a)
    a=int(a)
    a+=1

(2)思路二:三位数对10取余,可以获得个位数;对100取余可以获得百位数;十位数可以将三位数整除10,再对10取余。

a=100
while a<=999:
    b=a%10
    c=a//10%10
    d=a//100
    e=b**3+c**3+d**3
    if a==e:
        print(a)
    a+=1

学习python的第四天,感觉可以,冲[熊猫]

学习视频:花了2万多买的Python教程全套,现在分享给大家,入门到精通(Python全栈开发教程)_哔哩哔哩_bilibili

往期:python运算符浅学

python转义字符

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 sumchina520@foxmail.com 举报,一经查实,本站将立刻删除。
如若转载,请注明出处:https://www.vsaren.com/133715.html