分支与循环结构测试题(有答案版)

习题目录

python基础知识之分支与循环结构练习题

一、基础题:

  1. 分别用单分支结构和多分支结构实现判断一个年份是否是闰年。
    • 判断一个年份是不是闰年的条件:

      • 能被400整除的年份是闰年,否则是平年。

      • 能被4整除,并且不能被100整除的年份是闰年,否则是平年。

    # 单分支结构
    year = input('请输入一个年份:')
    if year % 400 == 0 or(year % 4 == 0 and year % 100 != 0):
    	print(f'{
           year}是闰年')
    else:
    print(f'{
           year}是平年')
     
    # 三目运算符方式
    year = 2000
    result = '闰年' if year % 400 == 0 or(year % 4 == 0 and year % 100 != 0) else '平年'
    print(result)
    
    # 多分支结构方式
    if year % 400 == 0:
     print(f'{
           year}是闰年')
    elif year % 4 == 0 and year % 100 != 0:
     print(f'{
           year}是闰年')
    else:
     print(f'{
           year}是平年')
    
  2. 假设今天的上课时间为15678秒,编程计算今天上课时间是多少⼩时,多少分钟,多少秒;以‘XX时XX分XX秒’的⽅式表示出来。

  • 例如:100秒表示成**0时1分40秒**
  • 时间取余,先保留小时,剩下的先分配分钟,最后为秒。
    classtime = 156782
    hour = classtime // 3600
    minute = (classtime - hour * 3600) // 60
    second = classtime - hour * 3600 - minute * 60
    print(f'{
           hour}{
           minute}{
           second}秒')
    
  1. 写出判断⼀个数是否能够被2或者5整除,但是不能同时被2或者5整除的条件语句, 并且打印对应ti。
    • 判断解决问题是需要单分支还是多分支

    • 变式1:判断⼀个数是否能同时被2和5整除的条件语句, 并且打印对应的结果。

      number = int(input('请输入一个整数'))
      if(number % 2 ==0 or number % 5 ==0and number % 10 != 0:
          print('条件成立')
      else:
          print('条件不成立')
          
      # 变式一:
      number = 9
      result = '条件成立' if number % 2 == 0 and number % 5 == 0 else '条件不成立'
      print('条件不成立')
      
  2. 定义两个变量保存⼀个⼈的身⾼和体重,编程实现判断这个⼈的身材是否正常!输出格式:是否正常:True / False
    • 公式:体重(kg) / (身⾼(m)的平⽅值) 在18.5 ~ 24.9之间属于正常。

      # 也可以用input语句输入身高和体重数据,但是要通过构造器语法转换成整数。
      height = 175
      weight = 160
      if 18.5 <= (weight / height ** 2) <= 24.9:
          print(True)
      else:
          print(False)
      
  3. 摄氏度和华氏度转换。
    • C = (F - 32) / 1.8

    • 判断条件:单位

      # 主要的就是要考虑输入单位和公式转换的问题。
      temp = float(input('请输入要转换的温度:'))
      unit = input('请输入单位:')
      if unit == '摄氏度' or unit == 'c' or unit == 'C'
  • 2
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
第一章 计算机体系结构的基本概念 1.1 引论 1.2 计算机体系结构的概念 1.2.1 计算机系统中的层次概念 1.2.2 计算机体系结构 1.2.3 计算机组成和计算机实现技术 1.3 计算机体系结构的发展 1.3.1 存储程序计算机体系结构及其发展 1.3.2 计算机的分代和分型 1.3.3 应用需求的发展 1.3.4 计算机实现技术的发展 1.3. 5 体系结构的生命周期 1.4 计算机体系结构中并行性的发展 1.4.1并行性概念 1.4.2 提高并行性的技术途径 1.5 定量分析技术基础 1.5.1 计算机性能的评测 1.5.2 测试程序 1.5.3 性能设计和评测的基本原则 1.5.4 CPU的性能 1.6 影响计算机体系结构的成本和价格因素 1.6.1 集成电路的成本 1.6.2 计算机系统的成本和价格 1.7 小结习一第二章 计算机指令集结构设计 2.1 指令集结构的分类 2.1.1 指令集结构的分类 2.1.2 通用寄存器型指令集结构分类 2.2 寻址技术 2.3 指令集结构的功能设计 2.3.1 CISC计算机指令集结构的功能设计 2.3.2 RISC计算机指令集结构的功能设计 2.3.3 控制指令 2.4 操作数的类型、表示和大小 2.5 指令集格式的设计 2.5.1 寻址方式的表示方法 2.5.2 指令集格式的选择 2.6 编译技术与计算机体系结构设计 2.6.1 现代编译器的结构和相关技术 2.6.2 现代编译技术对计算机体系结构设计的影响 2.6.3 计算机体系结构对当前编译技术的影响 2.7 DLX指令集结构 2.7.1 DLX指令集结构 2.7.2 DLX指令集结构效能分析 2.8 小结习二第三章 流水线技术 3.1 流水线的基本概念 3.1.1 流水线的基本概念 3.1.2 流水线的分类 3.2 DLX的基本流水线 3.2.1 DLX的一种简单实现 3.2.2 基本的DLX流水线 3.2.3 流水线性能分析 3. 3 流水线中的相关 3.3.1 流水线的结构相关 3.3.2 流水线的数据相关 3.3.3 流水线的控制相关 3.4 流水线计算机实例分析(MIPS R4000) 3.4.1 MIPS R4000整型流水线 3.4.2 MIPS R4000浮点流水线 3.4.3 MIPS R4000流水线的性能分析 3.5 向量处理机 3.5.1 向量处理方式和向量处理机 3.5.2 向量处理机实例分析 3.6 小结习三第四章 指令级并行 4.1 指令级并行的概念 4.1.1 循环展开调度的基本方法 4.1.2 相关性 4.2 指令的动态调度 4.2.1 动态调度的原理 4.2.2 动态调度算法之一:记分牌 4.2.3 动态调度算法之二:Tomasulo算法 4.3 控制相关的动态解决技术 4.3.1 减少分支延迟:分支预测缓冲技术 4.3.2 进一步减少分支延迟:分支目标缓冲 4.3.3 基于硬件的推断执行 4.4 多指令流出技术 4.4.1 超标量技术 4.4.2 多指令流出的动态调度 4.4.3 超长指令字技术 4.4.4 多流出处理器受到的限制 4.5 小结习四第五章 存储层次 5.1 存储器的层次结构 5.1.1 从单级存储器到多级存储器 5.1.2 存储层次的性能参数 5.1.3 “Cache—主存”和“主存—辅存”层次 5.1.4 存储层次的四个问 5.2 Cache基本知识 5.2.1 映象规则 5.2.2 查找方法 5.2.3 替换算法 5.2.4 写策略 5.2.5 Cache的结构 5.2.6 Cache性能分析 5.2.7 改进Cache性能 5.3 降低Cache失效率的方法 5.3.1 增加Cache块大小 5.3.2 提高相联度 5.3.3 Victim Cache 5.3.4 伪相联Cache 5.3.5 硬件预取技术 5.3.6 由编译器控制的预取 5.3.7 编译器优化 5.4 减少Cache失效开销 5.4.1 让读失效优先于写 5.4.2 子块放置技术 5.4.3 请求字处理技术 5.4.4 非阻塞Cache技术 5.4.5 采用两级Cache 5.5 减少命中时间 5.5.1 容量小,结构简单的Cache 5.5.2 虚拟Cache 5.5.3 写操作流水化 5.5.4 Cache优化技术小结 5.6 主存 5.6.1 存储器技术 5.6.2 提高主存性能的存储器组织结构 5.7 虚拟存储器 5.7.1 虚拟存储器基本原理 5.7.2 快表(TLB) 5.7.3 页面大小的选择 5.8 进程保护和虚存实例 5.8.1 进程保护 5.8.2 页式虚存举例:Alpha AXP的存储管理和21064的TLB 5.9 Alpha AXP 21064存储层次 5.10 小结习五第六章 输入输出系统 6.1 概述 6.2 存储设备 6.2.1 磁盘设备 6.2.2 磁带设备 6.2.3 光盘设备 6.3 总线 6.3.1 总线分类 6.3.2 总线基本工作原理 6.3.3 总线使用 6.3.4 总线标准和实例 6.3.5 设备的连接 6.3.6 CPU与I/O处理的匹配 6.4 通道处理机 6.4.1 通道的作用和功能 6.4.2 通道的工作过程 6.4.3 通道种类 6.4.4 通道中的数据传送过程 6.4.5 通道的流量分析 6.5 I/O与操作系统 6.5.1 I/O和Cache数据一致性 6.5.2 DMA和虚拟存储器 6.6 I/O系统设计 6.7 小结习六第七章 多处理机 7.1 引言 7.1.1 并行计算机体系结构的分类 7.1.2 通信模型和存储器的结构模型 7.1.3 通信机制的性能 7.1.4 不同通信机制的优点 7.1.5 并行处理面临的挑战 7.1.6 并行程序的计算/通信比率 7.2 多处理机的存储器体系结构 7.2.1 集中式共享存储器体系结构 7.2.2 分布式共享存储器体系结构 7.3 互连网络 7.3.1 互连网络的性能参数 7.3.2 静态连接网络 7.3.3 动态连接网络 7.4 同步与通信 7.4.1 同步机制 7.4.2 大规模机器的同步 7.5 并行化技术 7.5.1 并行化的基本策略 7.5.2 并行语育与编译器 7.6 多处理机实例 7.6.1 Challenge多处理机系统 7.6.2 Origin 20007.
1. 关于数据的存储结构,以下选项描述正确的是 A 数据所占的存储空间量 B 数据在计算机中的顺序存储方式 C 数据的逻辑结构在计算机中的表示 D 存储在外存中的数据 正确答案: C 2. 关于线性链表的描述,以下选项中正确的是 A 存储空间不一定连续,且前件元素一定存储在后件元素的前面 B 存储空间必须连续,且前件元素一定存储在后件元素的前面 C 存储空间必须连续,且各元素的存储顺序是任意的 D 存储空间不一定连续,且各元素的存储顺序是任意的 正确答案: D 3. 在深度为 7 的满二叉树中,叶子结点的总个数是 A 31 B 64 C 63 D 32 正确答案: B 4. 关于结构化程序设计所要求的基本结构,以下选项中描述错误的是 A 重复(循环)结构 B 选择(分支)结构 C goto 跳转 D 顺序结构 正确答案: C 5. 关于面向对象的继承,以下选项中描述正确的是 A 继承是指一组对象所具有的相似性质 B 继承是指类之间共享属性和操作的机制 C 继承是指各对象之间的共同性质 D 继承是指一个对象具有另一个对象的性质 正确答案: B 6. 关于软件危机,以下选项中描述错误的是 A 软件成本不断提高 B 软件质量难以控制 C 软件过程不规范 D 软件开发生产率低 正确答案: C 7. 关于软件测试,以下选项中描述正确的是 A 软件测试的主要目的是确定程序中错误的位置 B 为了提高软件测试的效率,最好由程序编制者自己来完成软件的测试工作 C 软件测试是证明软件没有错误 D 软件测试的主要目的是发现程序中的错误 正确答案: D 8. 以下选项中用树形结构表示实体之间联系的模型是 A 网状模型 B 层次模型 C 静态模型 D 关系模型 正确答案: B 9. 设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程 (课号,课程名),选课SC(学号,课号,成绩),表SC的关键字(键或码)是 A 学号,成绩 B 学号,课号 C 学号,姓名,成绩 D 课号,成绩 正确答案: B 10. 设有如下关系表: 以下选项中正确地描述了关系表 R、S、T 之间关系的是 A T=R S B T=R×S C T=R–S D T=R S 正确答案: C 11. 关于 Python 程序格式框架的描述,以下选项中错误的是 A Python 语言的缩进可以采用 Tab 键实现 B Python 单层缩进代码属于之前最邻近的一行非缩进代码,多层缩进代码根据缩进关系决定所属 范围 C 判断、循环、函数等语法形式能够通过缩进包含一批 Python 代码,进而表达对应的语义 D Python 语言不采用严格的"缩进"来表明程序的格式框架 正确答案: D 12. 以下选项中不符合 Python 语言变量命名规则的是 A I B 3_1 C _AI D TempStr 正确答案: B 13. 以下关于 Python 字符串的描述中,错误的是 A 字符串是字符的序列,可以按照单个字符或者字符片段进行索引 B 字符串包括两种序号体系:正向递增和反向递减 C Python 字符串提供区间访问方式,采用 [N:M] 格式,表示字符串中从 N 到 M 的索引子字符串(包含 N 和 M) D 字符串是用一对双引号" "或者单引号' '括起来的零个或者多个字符 正确答案: C 14. 关于 Python 语言的注释,以下选项中描述错误的是 A Python 语言的单行注释以#开头 B Python 语言的单行注释以单引号 ' 开头 C Python 语言的多行注释以 ' ' '(三个单引号)开头和结尾 D Python 语言有两种注释方式:单行注释和多行注释 正确答案: B 15. 关于 import 引用,以下选项中描述错误的是 A 使用 import turtle 引入turtle 库 B 可以使用 from turtle import setup 引入 turtle 库 C 使用 import turtle as t 引入 turtle 库,取别名为 t D import 保留字用于导入模块或者模块中的对象 正确答案: B 16. 下面代码的输出结果是 x = 12.34print(type(x)) A <class 'int'> B <class 'float'> C <class 'bool'> D <class 'complex'> 正确答案: B 17. 关于 Python 的复数类型,以下选项中描述错误的是 A 复数的虚数部分通过后缀"J"或者"j"来表示 B 对于复数 z,可以用 z.real 获得它的实数部分 C 对于复数 z,可以用 z.imag 获得它的实数部分 D 复数类型表示数学中的复数 正确答案: C 18. 关于 Python

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

stiinput

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值