当前位置:   article > 正文

浙江大学python程序设计(陈春晖、翁恺、季江民)习题答案_def selsort(nums): n = len(nums) for bottom in ran

def selsort(nums): n = len(nums) for bottom in range(n-1): mi = bottom for i

浙江大学python程序设计

第六章

一、单选题

1、print (type( lambda : 3))的输出结果是( A )。

   A、< class 'function'>             B、< class 'int'>
   C、< class 'float'>                D、< class 'None Type'>
  • 1
  • 2

2、在Python中,对于函数定义代码的理解,正确的是( C )。

A、必须存在形参
B、必须存在`return`语句
C、形参和`return`语句都是可有可无的
D、形参和`return`语句要么都存在,要么都不存在
  • 1
  • 2
  • 3
  • 4

3、在一个函数中若局部变量和全局变量同名,则( A )。

A、局部变量屏蔽全局变量
B、全局变量屏蔽局部变量
C、全局变量和局部变量都不可用
D、程序错误
  • 1
  • 2
  • 3
  • 4

4、areatri模块中的一个函数,执行from tri import area后,调用area()函数应该使用( C )。

A、tri(area)     B、tri.areal()     C、area()      D、tri()
  • 1

5、函数可以改变( C )类型的形式参数变量绑定的实参 。

A、int           B、string          C、list         D、float
  • 1

6、函数定义如下:

def f1(a,b,c):
	print(a+b)
	nums=(1,2,3)
f1(*nmus)
  • 1
  • 2
  • 3
  • 4

程序运行的结果是( B )。

A、6            B、3                D、1            C、语法错
  • 1
二、填空题

1、下面程序的运行结果是( 5,45,8 )。

def scope():
   n=4
   m=5
   print (m,n,end = '')
n=5
t=8
scope()
print (n, t)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

2、下面程序的运行结果是( 【1,6】【1,6】 )。

l=[1]
def scopel():
   l.append(6)
   print(l,end='')
scopel()
print(l)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

3、下面程序的运行结果是( 2020 )。

a=10
def func():
    global a
    a=20
    print(a,end="")
func()
print(a)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

4、下面程序的运行结果是( 8 )。

b, c=2, 4
def g_func(d):
    global a
    a=d*c
g_func(b)
print(a)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

5、下面程序的运行结果是( Prime Factor :19 )。

import math
def factors(x):
   y = int(math.sqrt(x))
   for i in range(2, y + 1):
       if (x % i == 0):
            factors(x // i)
            break
   else:
       print("Prime Factor:", x)
   return
factors(38)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

6、下面程序的运行结果是( -6,3,6,8,8,12,45,79 )。

def ins_sort_rec(seq, i):
   if i == 0: return
   ins_sort_rec(seq, i - 1)
   j = i
   while j > 0 and seq[j - 1] > seq[j]:
      seq[j - 1], seq[j] = seq[j], seq[j - 1]
      j -= 1
seq = [3, -6, 79, 45, 8, 12, 6, 8]
ins_sort_rec(seq, len(seq) - 1)
print(*seq)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

7、下面程序的运行结果是( 8 )。

def basic_lis(seq):
   L = [1] * len(seq)
   for cur, val in enumerate(seq):
     for pre in range(cur):
       if seq[pre] <= val:
         L[cur] = max(L[cur], 1 + L[pre])
   return max(L)
L = [49, 64, 17, 100, 86, 66, 68, 68, 87, 96, 19, 99, 35]
print(basic_lis(L))
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

8、下面程序是冒泡排序的实现,请填空 。

def bubble(List):
   for j in range(_____,0,-1):
     for i in range(0,j):
       if List[i] > List[i+1]:List[i], List[i+1] = List[i+1], List[i]
   return List
testlist = [54,26,93,17,77,31,44,55,20]
print(bubble(testlist))
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

答案为( len(List-1)
9、下面程序是选择排序的实现,请填空 。

def selSort(nums):
   n = len(nums)
    for bottom in range(n-1):
      min = bottom
      for i in range(_____,n):
          if nums[i] < nums[min]:
             min = i
      nums[bottom],nums[min] = nums[min],nums[bottom]
nums = [49, 38, 65, 97, 76, 13, 27, 49]
selSort(nums)
print(nums)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

答案为( bottom+1 )

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/552796
推荐阅读
相关标签
  

闽ICP备14008679号