资源简介 第三章 算法的程序实现一、选择题1.下列能判断变量x是整数的条件表达式是( )A.x%2==1 B.x%2==0 C.int(x)==x D.random(x)=x2.下面( )是不合法的标识符?A.2var B.var2 C._var D._2_3.有如下Python程序段( )a=[]for i in range(100):if i%10==0:a.append(i)则程序执行后,a[1]和a[-1]的值分别是A.0和100 B.10和100 C.0和90 D.10和904.下列程序运行后,结果可能的是( )import randomlist1=[]i=0while i<=5:n=random.randint(10,45)if n%5!=0:list1.append(n)i=i+1m=random.sample(list1,2)print(m)A.[35, 14] B.[33, 24] C.14, 24 D.[23.0, 45.0]5.假定选拔空军飞行学员时,只有符合身高(T)在165-178cm(含168cm和178cm)、体重(W)在52kg(含52kg)以上条件的学生才有资格报考,则表示该条件的逻辑表达式是( )A.T>=165 or T<=178 or W>=52B.T>=165 & T<=178 or W>=52C.T>=165 and T<=178 or W>=52D.T>=165 and T<=178 and W>=526.下列代码如果从键盘输入7,那运行结果是( )。varl=input("请输入一个数:")var2=var1+'0'var3=int(var2)+3print(float(var3))A.703 B.73 C.703.0 D.73.07.下列Python表达式中,可以表示x在区间(a,b]内的是( )A. B.C. D.8.如下Python程序段x = 5 < 3print( x)程序的运行后,显示的结果是( )A.False B.True C.0 D.-1二、简答题9.利用for循环,分别计算1--100中奇数的和、偶数的和。sum1=0sum2=0for i in range(1,100):if i%2==0:sum1+=ielse:sum2+=iprint(sum1,sum2)10.利用python程序设计语言,编写一个输出1-10以内的偶数(包含10)的代码。三、操作题11.某加密算法的加密部分Python程序段如下:def encrypt(msg,key):result = ""size = len(msg)for i in range(0,size):result = result + msg[(i - key) % size]return resultmsg = input("请输入明文:")key = int(input("请输入密钥:"))re = _________print(re)(1)请在划线处补充代码。(2)如果输入的msg为“cdef”,key为3,那么输出的结果为______。(3)这种加密机制称为____(选填字母:A.置换密码;B.换位密码;C.简单异或密码)。四、判断题12.在 Python语言环境下,For循环语句中的循环体在书写时需要缩进,且必须缩进四个空格。 (_____)13.在运行程序时,先执行主程序再调用函数。(____)14.下列程序段中,赋值语句s=s+i被重复执行了4次。s=0For i in range(3,10,2):s=s+i (_____)15.Python中的“=”是赋值运算符,跟数学上的“=”意义不一样。(______)16.Python是动态语言,变量需要根据其要赋予的值提前定义数据类型。(______)17.若n=6,m=3,则表达式m+3==n and n-3>=m的值为true。(______)五、填空题18.下面程序的运行结果为:_______________________,s=0for i in range(1,101):s+=iif i == 50:print(s)break19.利用迭代算法解决问题,有三个关键步骤:确定________;建立迭代________;对迭代过程进行________,这是编写迭代程序必须考虑的问题,不能让迭代过程无休止地重复执行下去。20.阅读下列程序,写出运行结果警察抓小偷,有四个嫌疑人甲乙丙丁,其中一人是小偷。甲说“不是我”,乙说“是丙”,丙说“是丁”,丁说“丙在冤枉人”。他们中只有一人说了假话,编程判断谁是小偷。(注:在Python运算中,True的值为1,False的值为0)persons=[’甲’,’乙’,’丙’,’丁’] for thief in persons: flag =(thief!=’甲’)+(thief==’丙’)+(thief ==’丁’)+(thief!=’丁’) if flag == 3: print(thief)运行结果是:____________21.numpy是一个科学计算包,其中包括很多________,如________、矩阵计算方法、________、线性代数等。22.分析完善程序求s=3+6+9+... +300值。解决该问题,可以采用如下两种不同的方法:请补充完成上述程序:(1)____________ (2)___________23.数学可以看到算术表达式:a * b= c,现在有一段程序可以输入乘数和被乘数(默认正整数),并输出上述表达式的效果。例如:输入:3 5 ,输出的结果为:3 * 5= 15。a=int(input(“请输入正整数:”))b=int(input(“请输入正整数:”))c=a*bprint(_______)+ ”*” + _______ “=” ______ )请将上述缺失的代码补充完整。试卷第2页,共3页试卷第1页,共1页参考答案1.C2.A3.D4.B5.D6.D7.A8.A9.代码解析注释如下:sum1=0#定义sum1存储偶数和,并赋值sum1=0sum2=0#定义sum2存储偶数和,并赋值sum2=0for i in range(1,100):#通过遍历1至100的所有整数,分别计算1至100中的偶数和、奇数和if i%2==0:#若i是偶数,则把偶数加到sum1中sum1+=ielse:#若i是奇数,则把奇数加到sum2中sum2+=iprint(sum1,sum2)#输出结果,偶数和sum1的值为2550,奇数和sum2的值为250010.代码1:for value in range(2,11,2):print(value)代码2:i=2while i<11:print(i)i=i+211.encrypt(msg,key) defc A12.错误13.正确14.正确15.正确16.错误17.正确18.127519.迭代变量 关系式 控制20.丙21.数学函数 矢量运算 三角函数22.i*3或3*i i23.str(a) str(b)+ +str(c)答案第1页,共2页 展开更多...... 收起↑ 资源预览