4.1.4 Python的函数 知识点题库

在Python中,下列函数值为整数8的是(    )
A . abs(float(-8)) B . str(8) C . abs(int(-7.7)) D . len("12345678")
有如下VB程序段:

s1 = "abcde"

j = 1

s2 = "a"

For i = 1 To Len(s1)

    j = (j + 2) Mod Len(s1) + 1

    s2 = s2 + Mid(s1, j, 1)

Next i

Text1. Text = s2

执行该程序段后,文本框Text1中输出的内容是(    )

A . Acebda B . Acdeab C . Adbeca D . Adaceb
int(9.8),正确的结果是(   )
A . 10 B . ‘9’ C . 9 D . 9.0
函数range(7,10)生成的序列中元素的个数是(    )
A . 7 B . 3 C . 4 D . 10
下列选项中,属于Python求函数长度的是(    )。
A . mix() B . print() C . float() D . len()
有以下程序段:

sum=1

for i in range(1, 5):

    sum=sum*i

print(sum, i)

程序的运行结果为(      )。

A . 24   5 B . 120    5 C . 24   4 D . 120   4
以下VB 表达式中,它们之间的最大差值是(    )

①Sqr(Abs(-4)) Mod 3 + 5

②Fix(-8.8)\3*2

③Int(-11.2)\3*2

④3 ^ 2 - Len("1+1=2")

A . 15 B . 12 C . D . 6
有如下VB程序段:

Private Sub Command1_Click()

    Dim i As Integer

    Dim x As Integer

    Dim s As String

    Randomize

    i = 1: s = "1"

    Do While i <= 6

        x = Int(Rnd * 9) + 1

        If x Mod 2 = i Mod 2 Then

            s = s + Str(x)

            i = i + 1

        End If

    Loop

    Label1.Caption = s

End Sub

运行程序后,标签Label1中可能出现的是(    )

A . 1 8 3 4 5 2 B . 1 9 4 3 7 5 6 C . 1 9 4 7 6 5 2 D . 1 8 1 2 7 6 1
下列Visual Basic表达式的值等于34的是(   )
A . Mid("1234567", 3, 2) B . Abs(-33)+1 C . Sqr(34) D . Len("34")+1
关于python中的函数,以下描述错误的是(   )。
A . 函数能完成特定的功能,对函数的使用不需要了解函数内部实现原理,只要了解函数的输入输出方式即可 B . 使用函数的主要目的是减低编程难度和代码重用 C . Python 使用 del 保留字定义一个函数 D . 函数是一段具有特定功能的语句组
    小明和小红喜欢传纸条,为防同学偷看,约定使用Diffie-Hellman算法来加密,该算法的简化模型如下:二人先约定两个正整数g和n,然后小明私下随机生成一个数x,并计算U=gx Mod n;小红也私下生成一个数y,并计算V=gy Mod n。随后二人交换计算出的U,V。接着小明独自计算出自己的密码mkey=Vx Mod n,小红也独自计算出自己的密码hkey=Uy Mod n,且mkey=hkey。
    事实上,依上述算法,即便同学们知道g,n,U,V的值,也无法计算出二人的密码,必须再取得x或y才可以,而x,y仅他俩各自保留,外人无从知晓。
    已知消息加密的步骤(该步骤可逆)为:①将消息字符串倒序→②将各个字符转换为ASCII码数值→③对各个数值用密码进行异或操作(已知异或运算可逆,即a Xor k=b, b Xor k=a)→④用逗号间隔各异或运算后的结果。
    小红依加密的步骤可逆,编制了一个如下的VB程序,该程序用于解密小明的密文,程序运行界面如图所示。回答下列问题:

Private Sub decrypt_ Click()

    Dim g,n,U,y,hkey As Integer

    Dim mw, xx As string

    Dim a(1 To 100) As Integer

    Dim i, L As Integer, c As String

    '经与小明的协商,小红已获得g,n,U,y的值

    g=2:n=7           '约定两个数g和n的值分别为2和7

    U=2:y=5           '小红随机生成的数y的值为5

    mw = Text1.Text    '小明的密文,由数字和逗号组成

    hkey =     ①    

    L=1

    For i = 1 To Len(mw)

        c = Mid(mw, i, 1)

        If  Then

            a(L)=a(L)*10+Val(c)

        Else

            L=     ②    

        End If

    Next i

    For i=1 To L

        a(i) = a(i) Xor hkey

            ③   

    Next i

    Text2.Text = xx

End Sub

  1. (1) 加框处代码有错,请改正。
  2. (2) 在程序划线处填入合适代码,使程序完整。

     ② ③ 

用来接收键盘输入的函数是,python输出的函数是
在python中,想输出一行文字,要用到的函数是(    )。
A . input() B . int() C . print() D . float()
符合产生随机整数n,其范围为(100≤n≤200)的VB表达式是(    )
A . int(Rnd * 100)+ 100 B . int(Rnd * 100)+101 C . int(Rnd* 101)+100 D . int(Rnd* 101)+101
每位具有中华人民共和国国籍的公民都有一个唯一的, 不变的18位身份证号码。公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。

其中顺序码表示在同一地址码所标识的区域范围内,对同年、同月、同日出生的人编定的顺序号,顺序码的奇数分配给男性,偶数分配给女性。校验码是根据前面十七位数字码计算出来的检验码。

示例1:对于id_num='330281201010310640',返回(2010-10-31, 女)

示例2:对于id_num='330281200605302813',返回(2006-05-30, 男)

现在设计一个自定义函数,根据输入的身份证号,输出该公民的出生日期和性别。

以下代码能够实现上述功能。

def id_Inf(id_num):

birthday = id_num[6:10] + '-' + id_num[10:12] + '-' +    ①  

sex = '女男'

r =    ②  

return [birthday, sex[r]]

id_num='330281202002020648'

birthday, sex = id_Inf ((  ③  ))

print(birthday, sex)

  1. (1) 程序执行后输出的结果为
  2. (2) 程序实现如下,请在划线处补充代码。

     ② ③ 

下面过程max()用于求3个数中的最大值,利用这个过程求5个数中的最大值,请填空。

Private Sub Command1_Click( )

    Print “5个数34、124、68、73、352的最大值是:”

    Max1 = max(34,124,68)

    Max1 =

    Print Max1

End Sub

Public Function max(ByVal a%,ByVal b%,ByVal c%)

    If   Then

        M = a

    Else

        M = b

    End If

    If  Then

        Max = m

    Else

       

    End If

End Function

下列代码的执行结果是(   )

ls=[[1,2,3],[[4,5],6],[7,8]]

print(len(ls))

A . 3 B . 4 C . 8 D . 1
有以下Python代码:

a=input(“请输入a的值:”)

print(a*3)

假如从键盘输入5,则运行结果为(    )

A . 555 B . 15 C . 15.0 D . aaa
已知ch是一小写字母,VB表达式Int(Asc(ch)/10+0.5)+Int(Rnd*3-1)^2的最大值是(     )
A . 11 B . 12 C . 13 D . 14
两个长度相同的字符串s1和s2,若所含字符及各字符的数量均相等时可以归为一类。如字符串“ABDAC”与字符串“AABCD”可以归为一类,与“AABBC”不可以归为一类。实现该功能的VB程序段如下:

For i=1 To Len(s1)

    c= Mid(s1, i, 1)

    j=1

    Do While j <= Len(s2)

        If c=Mid(s2, j, 1) Then

            s2=

            Exit Do     '退出 Do循环

        Else

            j=j+1

           If j=Len(s2)+1 Then

               Label1.Caption="不可以归为一类!"

               Exit For     '退出For循环

            End If

        End If

    Loop

Next i

If i=  Then Label1.Caption="可以归为一类!"

加框处应填写的代码是(    )

A . ①Mid(s2, i, j- 1) + Mid(s2, j,  Len(s2)-j)   ②Len(s1) B . ①Mid(s2, 1, j- 1) + Mid(s2, j+1, Len(s2)-j)   ②Len(s1)+ 1 C . ①Mid(s2, 1, j- 1)+ Mid(s2, j+1, Len(s2)-j)   ②Len(s1) D . ①Mid(s2, i, j-1)+ Mid(s2, j, Len(s2)-j)   ②Len(s1)+ 1
最近更新