题目
10 以下有一个函数,假设函数入参a=5,则y=Fun(a)的值是?def Fun(a):y=0for i in range(a):y+=ireturn yA 10B 20C 5D 15
10 以下有一个函数,假设函数入参a=5,则y=Fun(a)的值是?
def Fun(a):
y=0
for i in range(a):
y+=i
return y
A 10
B 20
C 5
D 15
题目解答
答案
让我们逐步分析这个函数 Fun(a) 的执行过程,以确定当 a=5 时,函数的返回值 y 是多少。
函数解析
-
函数定义:
def Fun(a): y = 0 for i in range(a): y += i return y -
初始化:
- 函数
Fun(a)接受一个参数a。 - 变量
y被初始化为 0。
- 函数
-
循环:
for i in range(a):range(a)生成一个从 0 到a-1的序列。- 例如,当
a=5时,range(5)生成的序列是[0, 1, 2, 3, 4]。 - 在每次循环中,变量
i依次取值为 0, 1, 2, 3, 4。
-
累加:
y += i:在每次循环中,将当前的i值加到y上。- 具体来说:
- 第一次循环:
i=0,y = 0 + 0 = 0 - 第二次循环:
i=1,y = 0 + 1 = 1 - 第三次循环:
i=2,y = 1 + 2 = 3 - 第四次循环:
i=3,y = 3 + 3 = 6 - 第五次循环:
i=4,y = 6 + 4 = 10
- 第一次循环:
-
返回值:
- 循环结束后,
y的值为 10。 - 函数返回
y的值,即 10。
- 循环结束后,
结论
当 a=5 时,函数 Fun(a) 的返回值 y 是 10。
因此,正确答案是 A 10。
解析
本题考查对 Python 函数和 for 循环的理解与运用。解题思路是先明确函数的功能,即通过 for 循环对 range(a) 生成的序列中的元素进行累加,最后返回累加结果。接下来按照函数执行步骤逐步计算。
- 函数
Fun(a)接收参数a,并将变量y初始化为 0。 - 进入
for循环,range(a)会生成一个从 0 到a - 1的整数序列。当a = 5时,range(5)生成的序列为[0, 1, 2, 3, 4]。 - 在每次循环中,将当前的
i值累加到y上:- 第一次循环:
i = 0,根据y += i,此时y = 0 + 0 = 0。 - 第二次循环:
i = 1,y = 0 + 1 = 1。 - 第三次循环:
i = 2,y = 1 + 2 = 3。 - 第四次循环:
i = 3,y = 3 + 3 = 6。 - 第五次循环:
i = 4,y = 6 + 4 = 10。
- 第一次循环:
- 循环结束后,函数返回
y的值,即 10。