2021年06月 Python(四级)真题解析#中国电子学会#全国青少年软件编程等级考试

news2024/12/24 9:12:06

在这里插入图片描述

Python等级考试(1~6级)全部真题・点这里

一、单选题(共25题,每题2分,共50分)

第1题

对自然数1至n求和,如果将递推式f(n)=f(n-1)+n(n>1)转化成递归函数,则递归出口是?

A: f(1)=1
B: f(1)=0
C: f(0)=1
D: f(0)=0

答案:A

在递归函数中,当n的值等于1时,即n=1,递归出口应该是f(1) = 1。这是因为题目中定义的递归式中,当n等于1时,递归不再继续,直接返回1作为最终结果。

第2题

对比两个求等差数列1+2+…+n的和的程序,其算法效率?
程序1:

n=int(input())
s=(1+n)*n/2
print(s)

程序2:

n=int(input())
s=0
for i in range(n+1):
    s=s+i
print(s)

A: 程序1比程序2高
B: 程序2比程序1高
C: 一样高
D: 不能判断

答案:A

理解算法性能、算法效率概念

第3题

若以下程序段的运行结果为“##*”,则空格 (1) 、 (2) 处填写结果不可能为?

def f(n):
    s=""
    for i in range(     (1)     ,n):
        if i % 2==1:
            s=s+"*"
        else:
            s=s+"#"
    return s
print(f(     (2)     ))

A: 3,8
B: 3,7
C: 9,14
D: 1,6

答案:B

当变量i为奇数时,s累计符号“*”,所以range函数的初始值为奇数,又因为总共输出了5个符号,所以range函数的终值为初始值+5。

第4题

有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子。假如兔子都不死,要求输出一年内兔子的数量是多少。如果采用递归算法来编程,则核心的递归逻辑应该是?

A: f(n) =n*f(n-1)
B: f(n) = f(n-1)+n
C: f(n) = f(n-1)+f(n-2)
D: f(n) = f(n-1)+ (n-1)f(n-2)

答案:C

只有C是符合题意的递推式。

第5题

下列程序使用了哪种算法?

def fact(n):
    if n==0:
        return 1
    else:
        return n*fact(n-1)

A: 递推
B: 递归
C: 排序
D: 分治

答案:B

递归是一种算法设计技术,其中函数通过调用自身来解决问题。在给定的程序中,函数fact(n)通过递归调用自身来计算阶乘。当n等于0时,递归出口被触发,返回1。否则,函数将计算nfact(n-1)的乘积,实现递归求解。

第6题

以下几项关于函数的说法,错误的是?

A: 函数是一段具有特定功能的语句组
B: 调用函数时,参数传入的顺序必须与定义时保持一致
C: 在一个程序中,函数的定义可以放在函数调用代码之后
D: 使用函数可以增加代码重复利用率,还可以降低维护难度

答案:C

函数是一段具有特定功能的语句组,使用函数能够提高代码的重复利用率,降低维护难度;调用函数时,参数传入的数量、顺序必须与定义时一致;函数必须定义在前,才可以调用。

第7题

下面关于递归的描述不正确的是?

A: 递归思想是将大型复杂的问题转化为一个与原问题相似的规模较小的问题来求解
B: 递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,它不是分治策略的具体体现
C: 递归必须有终止递归的条件
D: 递归是在过程或函数里调用自身

答案:B

递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,它是分治策略的具体体现

第8题

下列哪项不是分治算法所具有的特征?

A: 该问题的规模缩小到一定的程度就可以容易地解决
B: 该问题可以分解为若干个规模较小的不同问题
C: 利用该问题分解出的子问题的解可以合并为该问题的解
D: 该问题所分解出的各个子问题是相互独立的

答案:B

第9题

以下能正确计算出“1!+3!+5!”值(n!=1x2x3…xn)的自定义函数是?

A:

def f():
	s=0
	t=1
	for i in range(1,6,2):
		t=t*i
		s=s+t
	return s

B:

def f():
	s=0
	t=0
	for i in range(1,6,2):
		t=t*i
		s=s+t
	return s

C:

def f():
	s=0
	t=1
	for i in range(1,6,2):
		t=t*i
		if i%2==1:
			s=s+t
	return s

D:

def f():
	s=0
	t=1
	for i in range(1,6):
		t=t*i
		if i%2==1:
			s=s+t
	return s

答案:D

A选项和C选项求的是11+113+1135的值;B选项由于t=0,乘以任何数都等于0,所以最终结果为0。

第10题

下面关于递归算法的描述,错误的是?

A: 任何递归程序都可以改写成非递归程序
B: 定义简单,逻辑清晰
C: 算法的执行效率较高
D: 原问题与子问题在结构上必须相似

答案:C

递归算法并不一定具有较高的执行效率。相反,某些情况下,递归算法可能会导致性能较低,因为它涉及到函数的调用和堆栈的管理。递归算法的执行效率受到递归层数的影响,如果递归层数很深,可能导致堆栈溢出或性能下降。在某些情况下,可以使用非递归方式重写递归算法,以提高效率。

第11题

下列关于函数的描述正确的是?

A: 使用函数的唯一目的是减少代码的重用
B: 不带return的函数返回值是None
C: 带有默认值的参数可以放在位置参数之前
D: 函数可以有多个参数,参数之间使用;隔开

答案:B

自定义函数中,可以有返回值,return语句;也可以没有返回值,不带return语句的,返回值是None

第12题

以下程序是用什么算法思维来显示数列 1,4,7,10,13,16 ?

a=1
for i in range(6):
    print(a)
    a+=3

A: 递归
B: 递推
C: 分治
D: 枚举

答案:B

递推是一种基于已知初始条件和递推关系,按顺序计算并推导出后续项的算法思维。在给定初始值 a=1 的情况下,通过循环迭代并逐步增加 a 的值,每次增加 3,从而得到数列的下一个元素。该程序通过递推关系 a += 3,依次计算并打印出数列中的元素。

第13题

运行下列这段程序,正确的输出结果是?

def f(a,b):
    c=a**2+b
    b=a
    return c
a=5
b=100
c=f(a,b)+b
print(c)

A: 210
B: 225
C: 130
D: 115

答案:B

函数的形参作用域为本函数,实参变量b的值没有改变,还是100。

第14题

安装wheel,wheel用于离线安装已经下载到本地的whl文件,可以在命令窗口直接运行?

A: pip list
B: pip wheel
C: pip unistall wheel
D: pip install wheel

答案:D

知道pip、 wheel、 exe 安装方法

第15题

下列选项中,哪个选项调用如下函数会报错?

def show(numbers):
    for n in numbers:
        print(n)

A: show([4,5,6])
B: show(‘Chinese’)
C: show(3,4)
D: show((4,5,6))

答案:C

调用函数时参数传入,数量必须一致

第16题

运行下列程序,输出结果正确的是?

def demo(lst, k):
    if k:
        return lst[k:]+lst[:k]
lst=[1,2,3,4,5,6]
print(demo(lst,4))

A: [4,5,6,1,2,3]
B: [5,6,1,2,3,4]
C: [6,5,4,3,2,1]
D: [1,2,3,4,5,6]

答案:B

运行结果是函数的返回值,返回值为两个列表的合并

第17题

在解决问题过程中,常用的“二分法”是一种什么算法?

A: 分治
B: 递归
C: 推理
D: 递推

答案:A

常用的"二分法"是一种分治算法。

"二分法"是一种常用的算法技巧,用于在有序数组或有序列表中查找特定元素的位置或进行其他类似的操作。它的基本思想是将问题分解为规模更小的子问题,然后根据问题的性质,选择其中一半的区间进行进一步的处理。通过不断缩小问题的规模,最终可以找到所需的解或结果。

在"二分法"中,首先确定问题的中间点,然后根据中间点与目标值的比较,可以确定目标值在中间点的左侧还是右侧。然后,将问题的规模缩小为原来的一半,并继续在相应的区间中应用相同的方法,直到找到目标值或确定目标值不存在。

第18题

在Python Shell提示符下输入以下哪个选项,回车后,再输入pi,回车,能得到数值3.141592653589793?

A: import math
B: import math as pi
C: from math import PI
D: from math import *

答案:D

掌握 import 和from 方式

第19题

下列程序段中自定义函数do(n)的作用是?

def do(n):
    s=0
    f=1
    for i in range(1,n+1,2):
        s=s+1/i*f
        f=-f
    return s
print(do(10))

A: 求1+1/2+1/3+1/4+1/5+1/6+1/7+1/8+1/9+1/10的值
B: 求1+1/3+1/5+1/7+1/9的值
C: 求1-1/3+1/5-1/7+1/9-1/10的值
D: 求1-1/3+1/5-1/7+1/9的值

答案:D

析:当调用自定义函数do(10)时,range(1,11,2)表示生成的序列为1,3,5,7,9,而变量f的作用是在1和-1之间互相转换,所以运算符号“+”、“-”交替出现。

第20题

下列几个选项中,不是Python定义函数规则的是?

A: def关键字开头,后接函数名加括号,以冒号结束
B: Python定义函数时,必须声明形参类型
C: 返回值写在return后面
D: 使用函数名( )的方式调用函数

答案:B

Python定义函数的规则:以def开头,后接函数名和’():’,有参数写在()中,下一行缩进,如果有返回值则写在return后面。Python定义函数时,不需要声明函数参数的类型

第21题

以下哪项不是使用分治法解决问题的步骤?

A: 分解
B: 求解
C: 合并
D: 判断

答案:D

第22题

在Python中,调用下面函数的返回值为?

def fun():
    x=101

A: None
B: 101
C: 程序报错
D: x=101

答案:A

没有return语句的函数,返回值是None

第23题

下列哪个选项的返回值与其他三项不同?

A: round(3.176)
B: abs(-3)
C: ord(‘3’)
D: len([1,2,3])

答案:C

round(x[,n])对x进行四舍五入(如果给定n,就将数x转换为小数点后有n位的数),所以A选项返回值为3。abs(x)返回x的绝对值,所以B选项的返回值为3。ord(x)返回x对应的ASCII值,所以C选项的返回值为51。len(seq)返回序列的长度,所以D选项的返回值为3。

第24题

下列哪个是正确的函数名?

A: Plan_2021
B: 2021plan
C: return
D: 10plan10

答案:A

函数的命名规则与变量名一致,由字母、数字和下划线组成,不能以数字开头,字母区分大小写,不能使用Python中的关键字,如return。

第25题

以下函数的返回值是?

def pic(a:int,b:str)->str:
    c=a*b
    print(c)
    return c
pic(5,*#*’)

A: *#**#**#**#**#*
B: 5
C: 5*#*
D: 程序出错

答案:A

Python是动态语言,自定义函数时不需要声明与指定类型,但是在Python3.5之后,新增了对函数参数和返回值的类型指定和检查。即使参数输入类型与定义时不一致,实际上运行不会报错,Python的本质还是动态语言。

二、判断题(共10题,每题2分,共20分)

第26题

递归方法的运用不仅会简化主程序的设计,也会大大减少程序的代码量。

答案:正确

递归能减少程序的代码量

第27题

在Python中定义函数时不需要声明函数的返回值类型。

答案:正确

在Python中,函数的返回值类型不需要在函数定义时进行声明。与一些静态类型语言(如C++或Java)不同,Python是一种动态类型语言,它允许函数返回不同类型的值。在函数体内部,可以使用return语句来指定函数的返回值,而不需要显式声明返回类型。

第28题

Python程序是模块化架构,以.py的文件可以作为一个模块被引用。一些Python爱好者和支持者开发和分享了大量扩展库(包),可以根据需要用包管理器来安装或自定义,体现了Python语言强大的扩展性。

答案:正确

理解模块化架构和包的管理

第29题

通常问题的规模越大算法执行的时间就越长,算法执行时间的增长率和问题规模的增长关系,称为空间复杂度。

答案:错误

时间复杂度和空间复杂度的概念,本题是时间复杂度的描述,不是空间复杂度。

第30题

将一个大问题分解为若干子问题,且子问题与大问题是相同的问题,就构成了递归。

答案:错误

还需要满足一个条件:不能无限制地调用本身,须有个出口,化简为非递归状况处理。

第31题

将一个复杂的问题分解成若干个规模较小的子问题后,能不能利用分解出的子问题的解合并得到原问题的解是最关键的特征,它决定了是否可以使用分治算法。

答案:正确

如果一个问题能够分解成若干个相同的规模较小的子问题,但是合并子问题的解不能得到原问题的解,就决定是该问题不能够运用分治算法求解。但是可以深度贪心算法或者动态规划算法求解。

第32题

已知大写字母“A”对应的ASCII码值为65,变量ch保存输入的大写英文字母,则语句chr((ord(ch)+1-ord(“A”)) % 26+ord(“A”))能实现大写英文字母后移一位,如A→B, B→C, ……Y→Z, Z→A。

答案:正确

ord(x)函数的作用是返回x对应的ASCII值,chr(x)函数的作用是返回x对应的字符,x%y表示x除以y取余数,已知大写英文字母26为一循环,所以语句“chr((ord(ch)+1-ord(“A”)) % 26+ord(“A”))”能实现大写英文字母后移一位。

第33题

下列程序段运行后,打印结果为9。

def f():
    s=0
    for i in range(3,1,-1):
        if i<=1:
            x=1
        if i<=2:
            x=2
        if i<=3:
            x=3
        s=s+x
    return s
print(f())

答案:错误

循环结构中循环变量i的值只能取到3和2。当i=3时,x=3,s=3;当i=2时,x=3,s=6。

第34题

可以统计字符串、列表、元组、字典等内某元素个数的Python内置函数是index()。

答案:错误

可以统计字符串、列表、元组、字典等内某元素个数的Python内置函数是count()。

第35题

判断下列代码的正确与错误。

def f(a,b,c):
    print(a+b,b,c-a)
f(8,b=2,6)

运行上述程序段,结果为10 2 -2。

答案:错误

本题在调用函数的过程中,实参传递时既有顺序,又有关键字,在两种方式混用时,顺序实参必须放在关键字实参的前面,否则程序会报错。

三、编程题(共3题,共30分)

第36题

质数是一个大于1的自然数,除了1和它本身外,不能被其他自然数整除。下面的程序设计中,先自定义一个函数,用来判断一个数是否为质数。然后,通过键盘输入一个数,调用所编写的函数,判断该输入的数是否为质数。请根据上述设计思想,完成程序段中划线处的填空。

def findprime(m):
    for i in range(2,m):
        if _______①:
            return False     
        else:
            return ________ ②
n = int(input('请输入一个数:'))
if  _______③:
    print("该数是质数.") 
else:
    print("该数不是质数.")

答案:

def findprime(m):
    for i in range(2,m):
        if m % i ==0:
            return False     
        else:
            return True
n = int(input('请输入一个数:'))
if findprime(n):
    print("该数是质数.") 
else:
    print("该数不是质数.")

考核标准:

① m % i ==0(3分)
② True(3分)
③ findprime(n)(4分)

第37题

随机生成的10个在[1,100)范围内整数存入列表;输入一个待查找的整数k,运用二分法在列表中查找k,根据查找状态输出对应的结果,请将程序补充完整。

from random import randint
def b(s,v):
    top=0
    last=len(s)
    while  ①_
        mid=(top+last)//2
        if v==s[mid]:
            return mid
        elif v>s[mid]:
             ②_
        elif v
            last=mid-1
    return None
s=[randint(1,100) for i in range(10)]
s.sort() 
print(s) 
k=int(input())
ans=b(s,k)
if  ③_
    print('找到,下标是:',ans)
else:
    print('没有找到这个数!')

运行结果1:
[13, 25, 27, 41, 52, 66, 67, 69, 72, 75]
72
找到,下标是: 8
运行结果2:
[9, 15, 16, 19, 27, 31, 43, 64, 84, 93]
20
没有找到这个数!

答案:

from random import randint
def b(s,v):
    top=0
    last=len(s)
    while top<=last:
        mid=(top+last)//2
        if v==s[mid]:
            return mid
        elif v>s[mid]:
             top=mid+1
        elif v
            last=mid-1
    return None
s=[randint(1,100) for i in range(10)]
s.sort() 
print(s) 
k=int(input())
ans=b(s,k)
if ans!=None: 
    print('找到,下标是:',ans)
else:
    print('没有找到这个数!')

考核标准:

①top<=last:或等效答案;(2分)
②top=mid+1或等效答案;(3分)
③ans!=None: 或等效答案;(3分)

第38题

有一群兔子,4个4个地数余1个,5个5个地数余2个,9个9个地数余7个,试问兔子有多少只?(请将程序补充完整)

defwhileif n%5==2:
            break
        n+=9
    while True:
        ifbreak
        n+=45
    print(n)
f(16)

答案:

def f(n):
    while True:
        if n%5==2:
            break
        n+=9
    while True:
        if n%4==1:
            break
        n+=45
    print(n)
f(16)

考核标准:

① f(n):或等效答案;(4分)
② True:或等效答案;(4分)
③ n%4==1:或等效答案;(4分)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1181669.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

自动出价下机制设计系列 (二) : 面向私有约束的激励兼容机制设计

本文作者&#xff1a;真柏、妙临 欢迎关注&#xff1a;阿里妈妈技术公众号>> 导读&#xff1a;这篇是阿里妈妈在自动出价下机制设计系列的第二篇工作&#xff08;&#x1f517; 第一篇&#xff1a;面向异质目标函数广告主的拍卖机制设计&#xff09;。在自动出价中&…

猫罐头哪家好?5款良心性价比的猫罐头推荐!

在我们日常的宠物喂养中&#xff0c;猫罐头已经成为了许多猫奴们的必备利器。但面对五花八门的猫罐头品牌&#xff0c;如何为你的猫咪挑选一个既合适又满意的猫罐头呢&#xff1f;作为一家宠物店的老江湖&#xff0c;我已经在宠物行业摸爬滚打了七年&#xff0c;店里的猫儿队伍…

数据库的基础增删查改操作(二)

TOC 一.条件查询的练习题 – 查询英语不及格的同学及英语成绩 ( < 60 ) – 查询语文成绩好于英语成绩的同学 查询语文成绩高于60,英语成绩低于60 查询li开头的学生姓名 1.and与or 查询语文成绩大于80分&#xff0c;且英语成绩大于80分的同学 SELECT * FROM exam_result W…

Anaconda如何创建一个环境

activate env_name 激活环境&#xff0c;env_name&#xff1a;环境名 deactivate env_name 激活环境 conda list …

java八股文(mysql篇)

什么是关系型数据库&#xff1f; 其是建立在关系模型基础上的一种数据库&#xff0c;这种关系分为&#xff1a;一对一&#xff0c;一对多&#xff0c;多对多。 我们的数据存放在表中&#xff0c;在表中会有一至多个字段&#xff0c;一行就是一条数据。 mysql有哪些字段呢&…

pg安装pgagent插件以创建job

一 下载 官方下载地址Download 二 安装 2.1 安装cmake 执行cmake -version查看版本&#xff0c;如果能看到版本信息&#xff0c;就不用重复安装了。 cd /usr/local/ tar xvf cmake-3.16.5-Linux-x86_64.tar.gzcd cmake-3.16.5-Linux-x86_64/binvi /etc/profile 在最后新增…

哇,膜拜,师父竟然懂HARAKIRI的意思(附Linux常用命令)

哇&#xff0c;膜拜&#xff0c;师父竟然懂HARAKIRI的意思 我在看服务器日志的时候&#xff0c;发现有好几行开头都写着HARAKIRI 还以为是什么机制&#xff0c;就去问了问AI&#xff0c;结果它也不懂&#xff0c;百度也没查到 就去问师父&#xff0c;他一下就说出&#xff0c…

Kubernetes - pod详解

Pod基础概念&#xff1a; Pod是kubernetes中最小的资源管理组件&#xff0c;Pod也是最小化运行容器化应用的资源对象。一个Pod代表着集群中运行的一个进程。kubernetes中其他大多数组件都是围绕着Pod来进行支撑和扩展Pod功能的&#xff0c;例如&#xff0c;用于管理Pod运行的S…

动手学Matplotlib画图,Matplotlib 是一个非常强大的 Python 画图工具。【Matplotlib学习笔记】

一、第一章 1.基本用法 import matplotlib.pyplot as plt import numpy as npx np.linspace(-1,1,50) y 2*x 1 plt.plot(x,y) plt.show()2.figure图像 import matplotlib.pyplot as plt import numpy as npx np.linspace(-1,1,50) y1 2*x 1 y2 x**2 plt.figure() plt…

6.ELK之Elasticsearch嵌套(Nested)类型

0、前言 在Elasticsearch实际应用中经常会遇到嵌套文档的情况&#xff0c;而且会有“对象数组彼此独立地进行索引和查询的诉求”。在ES中这种嵌套文档称为父子文档&#xff0c;父子文档“彼此独立地进行查询”至少有以下两种方式&#xff1a; 1&#xff09;父子文档。在ES的5.…

基于人工蜂鸟算法的无人机航迹规划-附代码

基于人工蜂鸟算法的无人机航迹规划 文章目录 基于人工蜂鸟算法的无人机航迹规划1.人工蜂鸟搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要&#xff1a;本文主要介绍利用人工蜂鸟算法来优化无人机航迹规划。 …

【kubernetes】k8s组件

文章目录 1、概述2、控制平面组件&#xff08;Control Plane Components&#xff09;2.1 kube-apiserver2.2 etcd2.3 kube-scheduler2.4 kube-controller-manager2.5 cloud-controller-manager 3、Node组件3.1 kubelet3.2 kube-proxy3.3 容器运行时&#xff08;Container Runti…

基础算法-回溯算法-案例

现象&#xff1a; 基础算法-回溯算法-案例 基础算法-回溯算法从不同角度出发 去寻找答案 找到答案或者走不通了(根据需求:找一个答案还是列举全部答案) 则回溯返回继续从下一条路出发 去寻找答案, 一直到走完 常见案例&#xff1a; 案例一&#xff1a; 通过输入一个不重复数…

找到【SVM】中最优的惩罚项系数C

因为本来SVM是想找到间隔最大的分割面&#xff0c;所以C越大&#xff0c;SVC会选择边际更小的&#xff0c;能够更好的分类所有训练点的决策边界&#xff0c;不过模型的训练时间也会越长。如果C的设定值较小&#xff0c;那SVC会尽量最大化边界&#xff0c;决策功能会更简单&…

4.求1000以内的所有完数

#include<stdio.h> // 完数&#xff1a;一个数的所有的真因子 (即除了自身以外的约数)的和&#xff0c;恰好等于它自身 // 1 不是完数 // 4的因子&#xff1a;1 2 4 除了本身 4 不等于 1&#xff0b;2 所以4不是完数void fun(void){int sum,i,j;for(i2;i<1000;i)…

架构师必备-DDD之落地实践

1. 走进 DDD 1.1 为什么要用 DDD &#xff1f; 面向对象设计&#xff0c;数据行为绑定&#xff0c;告别贫血模型&#xff1b;降低复杂度&#xff0c;分而治之&#xff1b;优先考虑领域模型&#xff0c;而不是切割数据和行为&#xff1b;准确传达业务规则&#xff0c;业务优先…

Unity中Shader再议ATTENUATION

文章目录 前言一、实现实时阴影的投射1、直接复制之前实现投射阴影的Pass 二、实现实时阴影的接受&#xff0c;同时实现光照衰减1、在 v2f 中使用这个2、在 顶点着色器 中使用这个3、在 片元着色器 中使用这个 前言 在之前文章中&#xff0c;实现了 Global Illumination 的直接…

python 之切片

文章目录 基本切片语法负索引step 为负使用负数的 Step从右向左提取间隔提取 注意事项切片的应用切片运用到字符串、元组、range对象字符串切片基本字符串切片使用步长进行操作 元组切片基本元组切片使用步长进行操作 range 对象切片基本 range 切片使用步长进行操作 在 Python…

SPSS两变量相关性分析

1.两变量相关性分析 两变量相关性分析是统计学中用于评估两个变量之间是否存在线性关系以及关系紧密程度的一种方法。相关性的大小通常使用相关系数来衡量&#xff0c;最常用的是皮尔逊相关系数&#xff08;Pearson correlation coefficient&#xff09;&#xff0c;但还有斯皮…

简单讲讲RISC-V跳转指令基于具体场景的实现

背景 在 RISC-V指令集中&#xff0c;一共有 6 条有条件跳转指令&#xff0c;分别是 beq、bne、blt、bltu、bge、bgeu。如下是它们的定义与接口 BEQ rs1, rs2, imm ≠ BNE rs1, rs2, imm &#xff1c; BLT rs1, rs2, imm ≥ BGE rs1, rs2, imm < unsigned BLTU rs1…