Python 实验三 控制语句

2023-05-16

1.从键盘接收整数的一百分制成绩(0到100),要求输出其对应的成绩等级A-E。其中,90分(包含)以上为A,80-89(均包含)分为B,70-79(均包含)分为C,60-69(均包含)分为D,60分以下为E。

n=int(input("请输入成绩(0~100):"))
if n<0 or n>100:
    print("输入错误!请重新输入。")
elif n>=90:
    print("A")
elif n>=80 and n<=89:
    print("B")
elif n>=70 and n<=79:
    print("C")
elif n>=60 and n<=69:
    print("D")
else:
    print("E")

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.预设一个0~9之间的整数,让用户猜一猜并输入所猜的数。如果大于预设的数,显示“太大”;小于预设的数,显示“太小”。如此循环,直至猜中该数,显示“恭喜!你猜中了!”。

while True:
    a=7
    n=int(input("请输入你猜的数(0~9):"))
    if n>a:
        print("太大")
    elif n<a:
        print("太小")
    else:
        print("恭喜!你猜中了")
        break

在这里插入图片描述
3.某电商平台上销售不同规格包装、不同价格的水笔。编写程序,在不考虑运费的情况下,从键盘分别输入两种水笔的包装和价格,分别计算单根水笔的价格,根据价格就低原则打印输出选择购买哪种产品。

flag='Y'
i=0
minPrice=float('Inf')       #最大值
k=0
while flag.upper()=='Y':
    i+=1
    packageNumber=eval(input('请输入第'+str(i)+'种笔的包装支数:'))
    packagePrice=eval(input('请输入第'+str(i)+'种笔每包的价格:'))
    perPrice=packagePrice/packageNumber
    print('第',i,'种笔的单支价格为:',perPrice,sep="")

    if perPrice<minPrice:
        minPrice=perPrice       #记录截止目前的最低均价
        k=i                     #记录截止目前的最低均价种类序号

    flag=input('是否继续输入下一种笔的信息(Y/N)?')
    

if k!=0:
    print("第",k,"种笔的均价最低,单根笔的价格为:",minPrice,sep="")

在这里插入图片描述
4.输出1000以内的素数以及这些素数之和(素数,是指除了1和该数本身之外,不能被其他任何整数整除的数)。

prime = []
for i in range(2,1000):
    affirm = True
    for j in prime:
        if i % j == 0:
            affirm = False
    if affirm == True:
        prime.append(i)
print(prime)
print('sum=',sum(prime))

在这里插入图片描述
5.输入一个时间(小时:分钟:秒),输出该时间经过5分30秒后的时间。

hour,minute,second=input('请输入一个时间(h:m:s):').split(':')
hour=int(hour)
minute=int(minute)
second=int(second)
 
second+=30
if second >= 60:
    second = second-60
    minute += 1
    
minute+=5
if minute >= 60:
    minute = minute-60
    hour += 1
    
if hour == 24:
    hour = 0
    
print(hour,minute,second,sep=':')

在这里插入图片描述
6.编写程序,按公式s=1²+22+3°+…+n²求累加和s不超过1000的最大项数n,程序运行结果如下所示:
n s
1 1
2 5
3 14
4 30
5 55
6 91
7 140
8 204
9 285
10 385
11 506
12 650
13 819
14 1015
累计和不超过1000的最大项是n=13。

n=1
s=0
print('n\ts')
while s<1000:
    s+=n*n
    print(n,'\t',s)
    n+=1
print('累计和不超过的最大项数n=',n-2)

在这里插入图片描述
【实验总结】
1、单分支if语句
(1)if语句由四部分组成:关键字if、条件表达式、冒号、表达式结果为真(包括非零、非空)时要执行的语句体。
(2)其语法形式如下所示
if 条件表达式:
语句体
(3)单分支if语句先判断条件表达式值的是真还是假。
如果判断的结果为真(包括非零、非空),则执行语句体中的操作;
如果条件表达式的值为假(包括零、空),则不执行语句体中的操作。
(4)语句体既可以包含多条语句,也可以只由一条语句组成。当语句体由多条语句组成时,要有统一的缩进形式,否则可能会出现逻辑错误或导致语法错误。
2、双分支if/else语句
(1)双分支if/else语句的语法形式如下所示
if 条件表达式:
语句体1
else:
语句体2
(2)if/else语句是一种双分支结构,先判断条件表达式值的真假:
如果条件表达式的结果为真(包括非零、非空),则执行语句体1中的操作;
如果条件表达式为假(包括零、空),则执行语句体2中的操作。
(3)语句体1和语句体2既可以包含多条语句,也可以只由一条语句组成。
3、多分支if/elif/else语句
(1)多分支if/elif/else语句的语法形式如下所示:
if 条件表达式1 :
语句体1
elif 条件表达式2 :
语句体2
……
elif 条件表达式n-1 :
语句体n-1
else:
语句体n
语句体1,语句体2,……,语句体n,既可以包含多条语句,也可以只由一条语句组成。
4、while语句
(1)简单的while语句结构如下:
while 条件表达式:
循环体
(2)简单的while循环由关键字while、条件表达式、冒号、循环体构成。
(3)while语句的执行过程:
①计算while关键词后面的条件表达式值;如果其值为真(包括非零、非空),则转步骤②,否则转步骤(3);
②执行完循环体,转步骤1;
③循环结束。
循环开始之前,如果while关键词后面的条件表达式为假(包括零、空),则不会进入循环体,直接跳过循环部分。如果一开始while关键词后面的条件表达式为真(包括非零、非空),则执行循环体;
每执行完一次循环体,重新计算while关键词后面的条件表达式值,若为真,则继续执行循环体;循环体执行结束后重新判断while关键词后面的条件表达式;直到该条件表达式的值为假(包括零、空),则结束循环。
(4)跟if语句比较,相同点和区别如下:
相同点:两者都由表达式和冒号,以及缩进的语句体组成。并且都是在表达式的值为真时执行语句体。
不同点: if语句执行完语句体后,马上退出if语句。while语句执行完语句体后,立刻又返回到条件表达式重新计算,只要条件表达式的值为真,它会一直重复这一过程,直到条件表达式为假才结束循环。
(5)使用while语句时,有四点要注意:
①组成循环体的各语句必须是以相同的格式缩进。
②循环体既可以由单个语句组成,也可以由多条语句组成。如果语句尚未确定,可以暂时使用pass语句表示空操作,但不能没有任何语句。
③循环体中要有语句改变某个变量的值,使得条件表达式因为该变量值的改变而可能出现结果为假(包括零、空),从而能够导致循环终止,否则会造成无限循环。这个变量通常被称为循环控制变量。
(6)Python对大小写敏感,关键字while必须小写。
(7)while循环既可以用于解决循环次数确定的问题,也可以用于解决循环次数不确定的问题。
5、for语句
(1)for语句通过遍历一个序列(字符串、列表、元组)或迭代器等可迭代对象中的每个元素来建立循环。
(2)for语句的语法形式如下所示:
for 变量 in 序列或迭代器等可迭代对象:
循环体
(3)循环开始时,for关键词后面的循环控制变量从in关键词后面的可迭代对象中取值,如果没有取到值,则不进入循环;如果可迭代对象中有值可取,则取到最前面的值,接着执行循环体。循环体执行完成后,循环控制变量继续取可迭代对象的下一个值,如果没有值可取了,则终止循环;否则取到下一个值后继续执行循环体;然后重复以上过程,直到可迭代对象中没有值可取,循环终止。
6、函数range
(1)Python 3开始,函数range返回可迭代对象。本节以遍历range函数返回的可迭代对象为例,讲解用for循环遍历可迭代对象。
(2)range函数的语法格式如下:
range(start, stop[, step])
(3)功能:
产生一个从start开始(包括start),到stop结束(不包括stop),两个整数对象之间间隔step的可迭代对象。
(4)参数说明:
start:可迭代对象的开始值为start,默认是从 0 开始。例如range(6)等价于range(0, 6);
end:可迭代对象到end结束,但不包括end。例如:range(0, 6)产生包含0, 1, 2, 3, 4,5的可迭代对象,但没有6;
step:步长,表示所产生的可迭代对象元素之间的间隔,默认为1。例如:range(0, 6)等价于range(0, 6, 1)。步长也可以是负数,这时开始值大于结束值。
7、break语句和continue语句
(1)break语句可以用在while和for循环中。在循环进行过程中,如果某个条件被满足(一般通过if语句判断是否满足执行break语句的条件),则可以通过break语句立即终止本层循环。如果break语句在具有两层循环嵌套的内层循环中,则只终止内层循环,进入到外层循环的下一条语句继续执行。
(2)continue语句可以用在while和for循环中。在循环体执行过程中,如果遇到continue语句,程序会跳过本次循环的循环体剩余语句,回到循环开始的地方重新判断是否进入下一次循环。
(3)break语句与continue语句的主要区别:
break语句一旦被执行,则整个当前循环将被终止;
continue语句的执行不会终止整个当前循环,只是提前结束本次循环,跳过循环体中本次循环的剩余语句,提前进入到下一次循环。
8、带else的循环语句
(1)与一般程序设计语言不同,Python中的while和for语句后面还可以带有else语句块。
(2)带else的while语句语法如下:
while 条件表达式:
循环体
else:
else语句块
①当条件表达式为真(True、非空、非零)时,反复执行循环体。当循环因为while后面的条件表达式为假(False、零、空)而导致循环终止(或无法进入循环),else语句块执行一次,然后结束该循环结构。
②如果该循环是因为执行了循环体中的break语句而导致循环终止,else语句块不会执行,直接结束该循环结构。
(3)带else的for语句语法如下:
for 变量 in 序列或迭代器等可迭代对象:
循环体
else:
else语句块
①当变量能够从in后面的可迭代对象中取到值,则执行循环体。循环体执行结束后,变量重新从可迭代对象中取值。
②当变量从in后面的可迭代对象中取不到新的值,则循环终止,else语句块执行一次,然后终止循环结构。
③当循环是因为循环体中执行了break语句而导致终止,则else语句块不执行,直接终止循环结构。
9、循环的嵌套
(1)循环的嵌套是指在一个循环中又包含另外一个完整的循环,即循环体中又包含循环语句。循环嵌套的执行的过程:先进入外层循环第1轮,然后执行完所有内层循环,接着进入外层循环第2轮,然后再次执行完内层循环,…,直到外层循环执行完毕。
(2)While循环里面可以嵌套有while循环,for循环里面可以嵌套有for循环。同时,while循环和for循环也可以相互嵌套。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 实验三 控制语句 的相关文章

  • 如何启动英伟达TX2的两个CAN口

    英伟达的TX2有两路CAN xff0c 默认情况下是没有启动的 xff0c 通过ifconfig命令可以查看CAN是否启动 xff0c 如果启动了 xff0c 可以看到下面的设备 如果没有相应的设备 xff0c 则说明CAN没有启动起来 通
  • DDR基础

    欢迎关注我的博客网站nr linux com xff0c 图片清晰度和 xff0c 排版会更好些 xff0c 文章优先更新至博客站 DDR全称Double Data Rate Synchronous Dynamic Random Acces
  • OpenCV实验系列之Mask操作

    OpenCV实验系列之Mask操作 注意 xff1a 以下内容根据opencv官网提供的教程结合个人理解所得 xff0c 仅是个人学习笔记 xff0c 可能存在错误或偏差 xff0c 欢迎指正 OpenCV实验系列之Mask操作 Mask矩
  • UART通信可否只接VCC、RXD、TXD而不接GND?

    使用串口登录树莓派时出现的问题 xff1a 将TF卡插入到树莓派 xff0c 然后开启电源 xff0c 采用串口查看登录界面时出现误码 xff0c 最后排查得出是没有共地 那么假设有两款5V单片机 xff0c 独立供电 按理 xff0c 连
  • Linux 网络编程项目 —— FTP 网盘

    文章目录 项目简介知识点描述项目功能指令远程功能指令本地功能指令 使用的关键函数access 函数popen 函数chdir 函数strtok 函数strncmp 函数linux system函数是否执行成功判断方法 基本流程服务端客户端
  • VMware虚拟机

    文章目录 VMware虚拟机联网三种网络连接方式桥接模式联网原理NAT模式联网原理NAT模式配置手动配置网络关于apt命令关于ifconfig命令简介命令格式命令参数使用实例显示网络设备信息 激活状态的 开启 禁用网络 虚拟机内核与逻辑处理
  • 智能无障碍轮椅——ESP8266总体介绍及ESP-01S入门调试

    文章目录 一 ESP8266 介绍二 ESP8266的多种型号1 DT 062 ESP 01和ESP 01S 左边ESP 01S xff0c 右边ESP 01 3 ESP 12F 三 两种开发方式1 AT指令开发方式2 SDK开发方式 四
  • ROS操作系统快速入门

    文章目录 一 简介模块化 分布式的系统设计 二 安装虚拟机与ROS系统安装虚拟机的缺点安装ubuntu20 04 三 ROS系统安装切换镜像源视频教程 四 ROS应用商城APT源简介与指令介绍案例ros应用商城介绍 五 GIthub建立如下
  • Proteus 仿真8086+8255,运行时错误的解决

    要实现的功能 xff1a 通过开关控制流水灯的显示方式 电路原理图 xff1a 汇编源程序 xff1a CODE SEGMENT ASSUME CS CODE START MOV AL 90H OUT 36H AL AGAIN IN AL
  • 7年程序员项目经历归纳总结

    工作五年 xff0c 敲代码7年 xff0c 科研院所 国企 私企都有过经历 xff0c 发现项目的开发过程总是那么的相似 xff0c 过程举例如下 xff08 事实上画个流程图可能更好 xff0c 但是懒得画了 xff09 xff1a 1
  • Ubuntu20.04+ros(noetic)+RealsenseT265+ORB_SLAM3(一)

    noetic安装的很顺利 xff0c 照着官方文档来就行 xff1b Kalibr的编译 xff1a 一开始参考了 Ubuntu16 04 43 RealsenseT265跑通VINS Fusion IATBOMSW的博客 CSDN博客 x
  • 如何开启英伟达TX2的所有USB3.0口

    TX2新烧完系统之后 xff0c 默认只有一个USB3 0口使能了 xff0c 实际上TX2最多可以使能3个USB3 0口 xff0c 在TX2的design guide中 xff0c 可以找到相应的配置说明 xff0c 见下图 TX2默认
  • Ubuntu20.04+ros(noetic)+RealsenseT265+ORB_SLAM3(二)

    终于编译kalibr成功了 xff0c 可以标定t265了 标定分为三个步骤 xff0c 分别是IMU xff0c 双目和联合标定 xff0c 标定过程仍然参考了Ubuntu16 04 43 RealsenseT265跑通VINS Fusi
  • ADRC控制系统离散形式的稳定性证明

    1 引言 这个问题是最近课题组一个师兄的SCI控制论文的一部分 xff0c 应师兄之邀 xff0c 博主贡献了控制系统稳定性的数学证明 博主目前的研究方向跟控制领域毫无关联 xff0c 只负责其中的系统收敛性证明 师兄的控制系统是一个较为一
  • 固定翼无人机的自主降落-Simulink纵向控制仿真

    本项目来源于一项课程设计 xff0c 用于简单固定翼模型的降落 需要模型的请点击下载链接 xff0c 通过积分获取 https download csdn net download nudt zrs 12454986 练习过固定翼飞行的 x
  • 找工作笔试中的常见考点

    1 Java程序初始化执行顺序 xff1a 父类静态变量 父类静态代码块 子类静态变量 子类静态代码块 父类非静态变量 父类非静态代码块 父类构造函数 子类非静态变量 子类非静态代码块 子类构造函数 2 程序运行结果是多少 xff1f pu
  • eclipse修改后无法正常保存文件解决办法

    ctrl 43 s保存修改的代码时报错 window gt Preferences gt General gt Content Types gt Text gt 选中出现保存问题的文件类型 xff08 如JSP xff09 在底部出现 39
  • Ubuntu18.04+ros-melodic (包括Ubuntu16.04+ros-kinetic)乐视奥比中光相机在nano、tx2、PC等设备上的安装与使用,并解决无法显示rgb信息的问题

    2020 12 25修改 xff1a 本文底部所说的无法显示rgb的情况 xff0c 如果你买的是乐视就按照这个来绝对ok 如果你买的是奥比中光的原装正版 xff0c 直接启动launch文件就行了 xff0c 无须再修改端口号 本来用Ki
  • 数据库单表查询教师班级学生信息表

    单表查询实例 以下为单表查询小实验 xff0c 由于没有教师表和学生表数据库文件 xff0c 因此没有运行截图 xff0c 若有语法错误还望大佬们指正 1 查询学生信息表 info student 中的班级信息 Select 班级 span
  • 在用于 GROUP BY 子句分组依据列表的表达式中,不能使用聚合或子查询。

    在用于 GROUP BY 子句分组依据列表的表达式中 不能使用聚合或子查询 示例题目 原因分析 解决方案 示例题目 查询所有学生的平均成绩 显示字段为学号 姓名 平均成绩 题目 查询所有学生的平均成绩 显示字段为学号 姓名 平均成绩 报错情

随机推荐

  • 在查询中进行统计,分组统计,分开统计

    在查询中进行统计 按角色分组算出每个角色按有办公室和没办公室的统计人数 列出角色 xff0c 数量 xff0c 有无办公室 注意一个角色如果部分有办公室 xff0c 部分没有需分开统计 xff09 span class token cons
  • vscode在哪里配置git

    一 安装Git管理工具 xff0c 可上官网安装 xff0c 安装路径https git scm com xff0c 安装路径默认C Program Files Git xff0c 可自行修改 xff0c 这里我是安装在D Program
  • macOS下的串口调试助手——CoolTerm的使用

    很多希望在 macOS 下做嵌入式开发的朋友都苦于没有合适的串口调试软件 xff0c 今天我来介绍分享一下 CoolTerm 这款跨平台串口调试助手 1 下载安装 首先到 CoolTerm 的官方网站 http freeware the m
  • vscode怎么关掉/禁用源代码管理

    问题描述 运行项目时源代码管理自动运行 有时还报错实在不便 而运行本地项目时往往不用进行版本控制 xff0c 也就不需要vscode的源代码管理 解决方法 在设置中搜索GIT Enabled xff0c 将其关闭即可 如果求稳可以一并把gi
  • ‘com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor‘ 已经过时了导致出现返回total总为0的问题

    在配置类中去掉原有的依赖 他已经过时了 去掉之后 添加这个功能更多更新的Bean对象 64 Configuration span class token keyword public span span class token keywor
  • UnsatisfiedDependencyException: Error creating bean with name ‘subjectServiceImpl‘: Unsatisfied depe

    背景 看xml所在的路径不舒服 任性改资源路径 以为idea会帮我更新引用就以身试险了哈哈哈 报错信息是bean出现了创建错误 查了网上大部分的博客 一一排除后还是报错 网上大部分建议总结如下 1 先去排查service实现层有没有添加注解
  • Web server failed to start. Port 9020 was already in use./window环境

    Web server failed to start Port 9020 was already in use Web服务器无法启动 端口9020已在使用中 解决思路 xff1a 端口被占用了 xff0c 需要我们去杀死相应的进程 xff0
  • 怎么删除存在表关联的原有数据库表空间?

    怎么删除原有数据库表空间 xff1f 1 xff1a 查询所有的表空间 select tablespace name from sys dba tablespaces 2 xff1a 删除 普通删除 DROP TABLESPACE MESA
  • oracle数据库还原/finalshell/删除表空间/用户名冲突

    数据库10 0 1 131还原 1 首先进行数据库finalshell的配置 账号 xff1a mesadmin 密码 xff1a 2 加载oracle配置文件 sudo su su oracle source etc profile 3
  • C++中的数据类型及其所占字节

    1 整型 包括 xff1a short xff08 短整型 xff09 xff0c 占2个字节 xff1b int xff08 整型 xff09 xff0c 占4个字节 xff1b long xff08 长整型 xff09 xff0c 占4
  • C语言中的关键字

    C语言共有32个关键字 关键字不能作为常量名 变量名或其他标识符名称 根据关键字的作用 xff0c 可将关键字分为 xff1a 数据类型关键字 控制语句关键字 存储类型关键字和其它关键字这四类 数据类型关键字 xff08 12个 xff09
  • C语言字符串和字符串结束标志

    1 在C语言中 xff0c 是将字符串作为字符数组来处理的 2 C语言规定了一个 字符串结束标志 xff0c 以字符 0 作为结束标志 如果字符数组中存有若干字符 xff0c 前面九个字符都不是空字符 xff08 0 xff09 xff0c
  • C语言字符数组的输入和输出

    字符数组的输入输出有两种方法 xff1a xff08 1 xff09 逐个字符输入输出 用格式符 c 输入或输出一个字符 例如 span class token keyword int span span class token funct
  • android手机开启IPv6(电信)

    安卓手机开启IPv6 xff08 电信 xff09 系统设置找到移动网络 接入点 接入点选择CTNET 接入设置点进去可以找到APN协议 xff0c 选择IPv4 IPv6即可 实测手机这样设置后开热点笔记本 xff0c 能稳定获得ipv6
  • C语言 怎样定义函数

    1 定义函数 C语言要求 xff0c 在程序中用到的所有函数必须要 先定义 xff0c 后使用 定义函数应包括以下几个内容 xff1a xff08 1 xff09 指定函数的名字 xff0c 以便以后按名调用 xff08 2 xff09 指
  • C语言 函数的返回值

    通过函数调用使主调函数能得到一个确定的值 xff0c 这就是函数值 xff08 函数的返回值 xff09 1 函数的返回值是通过函数中的return语句获得的 return语句将被调用函数中的一个确定值带回到主调函数中去 如果需要从被调函数
  • C语言 函数的嵌套调用

    C语言的函数定义是互相平行 独立的 xff0c 也就是说 xff0c 在定义函数时 xff0c 一个函数内不能再定义另一个函数 xff0c 即不能嵌套定义 xff0c 但可以嵌套调用函数 xff0c 即 xff0c 在调用一个函数的过程中
  • C语言 Hanoi(汉诺)塔问题,用递归解决

    问题 古代有一个梵塔 xff0c 塔内有3个座A xff0c B xff0c C 开始时A座上有64个盘子 xff0c 盘子大小不等 xff0c 大的在下 xff0c 小的在上 有一个老和尚想把64个盘子从A作移到C座 xff0c 但规定每
  • C语言 数组元素的指针

    1 一个变量有地址 xff0c 一个数组包含若干个元素 xff0c 每个数组元素都在内存中占用存储单元 xff0c 它们都有相应的地址 2 指针变量既然可以指向变量 xff0c 当然也可以指向数组元素 xff08 把某一元素的地址放入一个指
  • Python 实验三 控制语句

    1 从键盘接收整数的一百分制成绩 xff08 0到100 xff0c 要求输出其对应的成绩等级A E 其中 xff0c 90分 xff08 包含 xff09 以上为A xff0c 80 89 xff08 均包含 xff09 分为B xff0