笔记:Python选择结构 编程题

文章目录


前言

在编程中,选择结构是一种重要的控制流程,它允许我们根据条件的满足与否选择性地执行不同的代码块。在 Python 中,常见的选择结构有 ifelifelse 语句。

if 语句允许我们检查一个条件,如果该条件为真,则执行特定的代码块。当我们需要检查多个条件时,可以使用 elif(else if)语句,它允许我们在前一个条件不满足时检查另一个条件。最后,我们可以使用 else 语句定义当所有条件都不满足时要执行的代码块。

在这个编程题中,我们将通过练习来加深对选择结构的理解和应用。通过完成这些练习,你将掌握如何使用选择结构解决各种问题,并提高你的编程技能。

一、选择结构是什么?

选择结构是计算机编程中的一种控制结构,用于根据条件的真假来决定程序中的执行路径。它允许程序根据不同的条件选择性地执行不同的代码块。在选择结构中,通常会使用条件语句来判断条件的真假,根据条件的结果执行相应的代码块。

常见的选择结构有以下几种:

  1. if 语句:用于检查单个条件是否为真,如果条件为真,则执行相应的代码块。

    python 复制代码
    if condition:
        # 执行条件为真时的代码块
  2. if-else 语句:除了执行条件为真时的代码块外,还可以执行条件为假时的备选代码块。

    python 复制代码
    if condition:
        # 执行条件为真时的代码块
    else:
        # 执行条件为假时的代码块
  3. if-elif-else 语句:用于检查多个条件,从上到下逐一判断,直到遇到第一个为真的条件,执行相应的代码块。如果所有条件都不满足,则执行 else 代码块(可选)。

    python 复制代码
    if condition1:
        # 执行条件1为真时的代码块
    elif condition2:
        # 执行条件2为真时的代码块
    else:
        # 执行条件1和条件2都不满足时的代码块

选择结构在编程中具有重要的作用,它使程序能够根据不同情况做出不同的响应,增加了程序的灵活性和逻辑性。

二、编程题

编程题:Python选择结构

题目:编写一个程序,根据用户输入的成绩,输出对应的等级。成绩范围如下:

  • 90 及以上:优秀
  • 80 - 89:良好
  • 70 - 79:中等
  • 60 - 69:及格
  • 60 以下:不及格

编写一个函数 grade_level(score),接受一个成绩参数 score,返回对应的等级。

示例:

python 复制代码
print(grade_level(95))  # 输出:优秀
print(grade_level(75))  # 输出:中等
print(grade_level(55))  # 输出:不及格

答案分析:

python 复制代码
def grade_level(score):
    if score >= 90:
        return "优秀"
    elif score >= 80:
        return "良好"
    elif score >= 70:
        return "中等"
    elif score >= 60:
        return "及格"
    else:
        return "不及格"

print(grade_level(95))  # 输出:优秀
print(grade_level(75))  # 输出:中等
print(grade_level(55))  # 输出:不及格

在这个答案中,我们定义了一个名为 grade_level 的函数,它接受一个参数 score,代表成绩。然后使用 if-elif-else 结构来判断成绩所在的区间,根据不同的条件返回相应的等级。


题目:编写一个程序,判断一个整数是奇数还是偶数。如果是偶数,则输出 "偶数",如果是奇数,则输出 "奇数"。

编写一个函数 check_even_odd(number),接受一个整数参数 number,根据该整数是奇数还是偶数返回相应的字符串。

示例:

python 复制代码
print(check_even_odd(4))   # 输出:偶数
print(check_even_odd(7))   # 输出:奇数
print(check_even_odd(0))   # 输出:偶数

答案分析:

python 复制代码
def check_even_odd(number):
    if number % 2 == 0:
        return "偶数"
    else:
        return "奇数"

print(check_even_odd(4))   # 输出:偶数
print(check_even_odd(7))   # 输出:奇数
print(check_even_odd(0))   # 输出:偶数

在这个答案中,我们定义了一个名为 check_even_odd 的函数,它接受一个参数 number,代表要判断的整数。然后使用 if-else 结构来判断整数除以 2 的余数是否为 0,如果余数为 0,则整数是偶数,否则是奇数。根据判断结果返回相应的字符串。


编程题:Python选择结构

题目:编写一个程序,接受用户输入的年份,判断该年份是否为闰年。如果是闰年,则输出 "是闰年",否则输出 "不是闰年"。闰年的判断规则为:

  1. 若年份能被4整除但不能被100整除,则为闰年;
  2. 若年份能被400整除,则也为闰年。

编写一个函数 is_leap_year(year),接受一个整数参数 year,判断该年份是否为闰年,并返回相应的字符串。

示例:

python 复制代码
print(is_leap_year(2020))  # 输出:是闰年
print(is_leap_year(2021))  # 输出:不是闰年
print(is_leap_year(1900))  # 输出:不是闰年
print(is_leap_year(2000))  # 输出:是闰年

答案分析:

python 复制代码
def is_leap_year(year):
    if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
        return "是闰年"
    else:
        return "不是闰年"

print(is_leap_year(2020))  # 输出:是闰年
print(is_leap_year(2021))  # 输出:不是闰年
print(is_leap_year(1900))  # 输出:不是闰年
print(is_leap_year(2000))  # 输出:是闰年

在这个答案中,我们定义了一个名为 is_leap_year 的函数,它接受一个参数 year,代表要判断的年份。然后使用 if-else 结构来判断年份是否满足闰年的条件,根据判断结果返回相应的字符串。


编程题:Python选择结构

题目:编写一个程序,接受用户输入的三个数字,然后输出其中最大的数字。

编写一个函数 find_max(num1, num2, num3),接受三个数字参数 num1num2num3,并返回其中最大的数字。

示例:

python 复制代码
print(find_max(10, 5, 8))  # 输出:10
print(find_max(3, 9, 6))   # 输出:9
print(find_max(2, 2, 2))   # 输出:2

答案分析:

python 复制代码
def find_max(num1, num2, num3):
    if num1 >= num2 and num1 >= num3:
        return num1
    elif num2 >= num1 and num2 >= num3:
        return num2
    else:
        return num3

print(find_max(10, 5, 8))  # 输出:10
print(find_max(3, 9, 6))   # 输出:9
print(find_max(2, 2, 2))   # 输出:2

在这个答案中,我们定义了一个名为 find_max 的函数,它接受三个参数 num1num2num3,代表要比较的数字。然后使用多个 if-elif-else 结构来比较这三个数字的大小,根据比较结果返回其中最大的数字。


总结

在本文中,我们讨论了选择结构在 Python 编程中的应用,并通过编程题目加深了对选择结构的理解和应用。在 Python 中,常见的选择结构有 ifelifelse 语句,它们允许根据条件的满足与否选择性地执行不同的代码块。

首先,我们介绍了选择结构的基本概念,包括 ifif-elseif-elif-else 结构的用法,以及它们在编程中的作用。然后,通过一系列编程题目,我们实践了选择结构的应用,包括根据成绩划分等级、判断奇偶数、判断闰年以及找到最大数等。

通过完成这些编程题目,我们加深了对选择结构的理解,掌握了如何使用选择结构解决不同类型的问题,提高了编程技能和逻辑思维能力。选择结构是编程中的重要概念之一,熟练掌握它可以帮助我们编写更加灵活和高效的代码。

相关推荐
魔理沙偷走了BUG几秒前
【Linux笔记】Day5
linux·笔记
索然无味io14 分钟前
组件框架漏洞
前端·笔记·学习·安全·web安全·网络安全·前端框架
gentle_ice33 分钟前
leetcode——矩阵置零(java)
java·算法·leetcode·矩阵
查理零世35 分钟前
保姆级讲解 python之zip()方法实现矩阵行列转置
python·算法·矩阵
刀客1231 小时前
python3+TensorFlow 2.x(四)反向传播
人工智能·python·tensorflow
whisperrr.1 小时前
【JavaWeb06】Tomcat基础入门:架构理解与基本配置指南
java·架构·tomcat
Jackilina_Stone1 小时前
【论文阅读笔记】“万字”关于深度学习的图像和视频阴影检测、去除和生成的综述笔记 | 2024.9.3
论文阅读·人工智能·笔记·深度学习·ai
sysu632 小时前
95.不同的二叉搜索树Ⅱ python
开发语言·数据结构·python·算法·leetcode·面试·深度优先
Ronin-Lotus2 小时前
上位机知识篇---CMake
c语言·c++·笔记·学习·跨平台·编译·cmake