笔记: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 结构的用法,以及它们在编程中的作用。然后,通过一系列编程题目,我们实践了选择结构的应用,包括根据成绩划分等级、判断奇偶数、判断闰年以及找到最大数等。

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

相关推荐
进击的女IT1 分钟前
SpringBoot上传图片实现本地存储以及实现直接上传阿里云OSS
java·spring boot·后端
Miqiuha8 分钟前
lock_guard和unique_lock学习总结
java·数据库·学习
一 乐1 小时前
学籍管理平台|在线学籍管理平台系统|基于Springboot+VUE的在线学籍管理平台系统设计与实现(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·学习
数云界2 小时前
如何在 DAX 中计算多个周期的移动平均线
java·服务器·前端
阑梦清川2 小时前
Java继承、final/protected说明、super/this辨析
java·开发语言
PythonFun2 小时前
Python批量下载PPT模块并实现自动解压
开发语言·python·powerpoint
炼丹师小米3 小时前
Ubuntu24.04.1系统下VideoMamba环境配置
python·环境配置·videomamba
GFCGUO3 小时前
ubuntu18.04运行OpenPCDet出现的问题
linux·python·学习·ubuntu·conda·pip
快乐就好ya3 小时前
Java多线程
java·开发语言
IT学长编程3 小时前
计算机毕业设计 二手图书交易系统的设计与实现 Java实战项目 附源码+文档+视频讲解
java·spring boot·毕业设计·课程设计·毕业论文·计算机毕业设计选题·二手图书交易系统