相关试卷

  • 1、小明设计了一个加密程序,对于任意输入的一个字符串,运行程序后会输出相应的密文。其中,字符串加密算法的思路如下:

    ⑴只针对英文字符和数字进行加密,其余字符保持不变;

    ⑵将原文中的小写字母转换成大写字母;

    ⑶根据第2步所得结果,若是英文字符,则逐个后移4位(例如“A”→“E”,“Z”→“D”);若是数字,则逐个前移2位(例如:“3”→“1”,“1”→“9”)。

    实现上述要求的某Python程序如下,但程序加框处代码有误,请修改。

    s1=input("请输入明文:")

    s2="

    for i in range(len(s1)):

         s=""

        if s1[i]>="a" and s1[i]<="z":

            s=chr(ord(s1[i])-32)

            s=chr((ord(s)-ord("A")+4) % 26 +ord("A"))

        elif s1[i]>="A" and s1[i]<= "Z":

            s=chr((ord(s1[i])-ord("A")+4)%26 +ord("A"))

        elif s1[i]>="0" and s1[i]<="9":

                 #①

        else:

                  #②

        s2=s2+s

    print("得到的密文是:",s2)

  • 2、在平面坐标系中,给定一组有序的点 。从原点出发,依次用线段连接这些点,构成一条折线,要求编写一个“计算折线长度”的Python程序,该Python程序代码编写思路如下:

    ①输入各点的坐标(最后一个点的坐标后不加逗号),存人变量a中;

    ②将原点坐标加到坐标序列a的最前端;

    ③以逗号为界从a中取出各点的坐标,存入列表b中;其中列表b中的第一个和第二个数字为第一个点的x坐标和y坐标,第三个和第四个数字为第二个点的x坐标和y坐标,以此类推;

    ④计算折线长度。若以b[]标记为相邻两个点中前者的x坐标,则b[i+2]为后者的x坐标,b[i+1]为前者的y坐标,b[i+3]为后者的y坐标。i最小值为0,最大值为len(b)-4,步长为2。运用for语句求折线长度。

    程序如下:

    from math import sqrt

    a=input("请输入各点的坐标:")

        ①            #补上原点坐标

    b=a.splt(",")      #取出各点的坐标

    if len(b) %2== 1:

        print("输入的坐标有误")

    else:

        s=0

        for i in range(0, len(b)-2,      ②      ):

            s=s+sqt((int(b[i+2])-int(b[i])* *2+(int(b[i+3])-int(b[i+1])**2)

        else:

            print("折线长度为:", s)

    (1)、若三个点的坐标为(5,10),(8,12),(6,17),则输入为
    (2)、程序中划线处的代码为①;②
  • 3、编写“字符串生成”的Python程序。程序功能:输入由多个正整数组成的字符串t1(这些正整数以“,”为分割符和结束符),并以这些整数为位置信息,依次从字典内容(t2)中提取相应字符并连接成字符串(s),最后将字符串(s)显示输出。其中,字典内容(2)从文件“dictionary.txt"中读取。

    例如:

    输入的t1="2,8,15,"

    字典内容(t2)从文件“dictionary.txt”中读取的内容为“python is a programming language.”

    程序最终输出的字符串(s)为:yio

    实现上述功能的某Python程序如下:

    f=open('dictionary.txt', 'r')

    t1=input('字符位置:')

    t2=f.read( )

    s=' '

    t=' '

    for i in range     ①     

        c=t1[i]

        if c==',':

            p=int(t)

            s=s+t2[p-1]

            t="

        else:

               ②     

    print(生成内容:',s)

    f.close

    为了使程序能正确运行,上述程序中划线处的代码分别为:①

  • 4、有如下Python程序。

    import turtle

    str1=input("请输入一个二进制整数:")

    str1_ len=len(str1)

    s=0

    for i in range(str1_ len):

        a=int(str1[i])

        b=2**(str1_ len-i-1)

        x=a*b

        s+=x

    print(s)

    运行该程序,输入1101110,程序结果为(     )

    A、110 B、111 C、220 D、1101110
  • 5、有10个数据34,22,101,8,14,88,24,17,54,7依次存放在列表list中,有如下Python程序:

    list= [34,22,101,8,14,88,24,17,54,7]

    num=list[0] for i in range(1, 10):

        if list[i]<num:

            num=list[i]

    print(num)

    当程序运行结束时,输出的值是(     )

    A、101 B、7 C、8 D、88
  • 6、斐波那契数列又称黄金分割数列,指的是这样一个数列:0,1,1,2,3,5,8,13,21,34……在数学上,斐波那契数列以下面的方法来定义:

    F(0)=0 (n=0)

    F(1)=1 (n=1)

    F(n)=F(n-1)+F(n-2) (n≥2)

    输出斐波那契数列中第10个数的Python程序如下:

    def fib(n):

        a,b= 0,1

        for i in range(n):

           

    return a

    print(fib(10))

    关于加框处的代码,下列说法正确的是(     )

    A、最多执行1次 B、最多执行9次 C、交换a和b的值 D、从数列中的第三项起,每一.项都是它 相邻的前两项之和
  • 7、有如下Python程序段:

    s="6st-udYy"

    for i in range(len(s)):

        if s[i]>="a" and s[i]<="z":

            t=t+s[i]

    print(t)

    该程序段的功能是输出字符串s中的(     )

    A、小写字母个数 B、所有小写字母 C、所有数字之和 D、所有非数字字符
  • 8、有如下Python程序:

    score = int(input('\n'))

    if score>= 90:

        grade= 'A'

    elif score >= 60:

        grade = 'B'

    else:

        grade= 'C'

    print (score, grade)

    运行程序,输入“78”后回车,程序的输出结果是(     )

    A、78A B、B78 C、78B D、78C
  • 9、某算法的部分程序代码与其相对应的流程图表示如下:

    Python程序代码

    流程图

    s= 1

    for i in range(1,   ①  ):

         if i%2!=0:

               ② 

    print (s)

    则程序中划线①和②处应填入的是(     )

    A、①11 ②s*=i B、①11 ②s*=i+1 C、①10 ②s*=i D、①10 ②s*=i-1
  • 10、在Python中,若lang-"study python" ,则要访问第一个字符“s”的表达式为(    )
    A、lang(0) B、lang[0] C、lang[1] D、"study python"[1]
  • 11、在Python中,与语句pow(4,2)功能相同的是(    )
    A、4**2 B、2**4 C、4*2 D、4%2
  • 12、下列Python表达式的值为5的是(    )
    A、int('10',5) B、max(5,10,15) C、len([1,5]) D、ord('5)
  • 13、Python中,若用变量a存储学生的身份证:号码,则变量a的数据类型为(    )
    A、布尔型 B、实型 C、字符串型 D、整型
  • 14、素数(prime number)又称质数,有无限个。在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为素数,如2,3,5,7,11……求1到100之间所有素数的Python程序如下,请在划线处填入合适的代码。

    import math         #导人math库,以便使用里面的函数

    list= [2,3]           #2,3预先加到素数列表中

    for i in range(5,101,2):      #第一层循环,从5到100中的奇数

         for j in range(2, ):     #第二层循环,逐个判断是否有因数

              if     #如果出现整除说明有因数

                   break    #跳出循环判断下一个

            else:    #如果第二层循环结束还没有跳出的话

                list.append(i)    #说明是素数,加到列表里

                n+=1

    for i in range(0,n+2):     #输出

         print(list[i])

  • 15、10个数据“23,15,51,36,78,47,39,9,88,96”依次存放在列表a中,使用如下Python程序段找出大于70的数的个数。

    a=[23,15,51,36,78,47,39,9,88,96]

    n=0

    m=70

    for i in range(0,10):

        if            

            n+=1

    print("个数:",n)

    程序中划线处的代码应为(    )

    A、a[i]>n B、a[i]<n C、a[i]>m D、a[i]< m
  • 16、密码的合法性。某网络服务平台,要求新注册用户的密码必须以字母开头,并且含有字母(区分大小写)、数字和下划线,密码字符的长度为6~18个字符。判断用户的密码是否合法的某Python程序如下,请在程序划线处填入合适的代码,完善程序。

    n1 =False #判断数字

    n2=False #判断下划线

    flag=False #判断首字符和长度是否满足要求

    password=input('请输入密码:\n')

    n=     ①      

    ch=password[0]

    if 19>n>5 and (z'>=ch>='a' or 'Z>= =ch>='A'):

        flag=True

    if flag:

        for i in range(1, n):

            ch=password[i]

            if '9'>=ch>='0':

                n1=      ②     

          elif ch= '_':

              n2=True

    if      ③      

        print('结果:', '合法')

    else:

        print('结果:', '不合法')
      ②  ③

  • 17、验证哥德巴赫猜想“任一大于2的整数都可写成两个质数之和"的Python程序如下:

    import math

    def isprime(n):     #判断素数(素数又称质数)

        if n= 1:

            return False

        elif n= 2:

            return True

        else:

            for i in range      ①     

               if n%i== 0:

              return False

          return True

    print('请输入一个正整数n:')

    n = int(input( ))

    for i in range(2,n//2+1):

        if isprime(i) and      ②      

            print(n,‘=’,i,‘+’,n-i)

    (1)、请在划线处填入合适的代码,完善程序,实现功能。

     ② 

    (2)、若输入的一个正整数为6,则输出结果是 。
  • 18、求方程组的解。有如下方程组:

    {2x3+xyy=3025x+y=38

    求该方程组解的Python程序如下:

    for x in range(1,8,1):

        if      :

            print("x= ",x)

            print("y=",38-5*x)

    回答下列问题:

    (1)、上述程序中,用到的主要算法是
    (2)、为了使程序能正确运行,上述程序划线处的代码应为
  • 19、有如下Python程序段:

    s=0

    for i in range(1, 101):

       if i%2== 0:

            s+=i

    该程序段被执行后,变量s中存储的是1~100之间的(    )

    A、偶数个数 B、奇数个数 C、奇数之和 D、偶数之和
  • 20、下列问题中,适合使用枚举算法的是(    )
    A、计算两个电阻的并联值 B、计算五位同学的平均身高 C、查找100以内所有能被6整除的数 D、计算超市的月利润
上一页 1045 1046 1047 1048 1049 下一页 跳转