第1章 Python程序基础

数据类型

1、判断题:
‏x=12‌‏x="changed"‌‏print(type(x))‌‏可以看到x的类型是str‌
选项:
A: 正确
B: 错误
答案: 【 正确

测验1

1、单选题:
‏print("Hi")‏‏print("3*6")‏‏程序输出结果:‏‏‏
选项:
A: Hi18
B: Hi 18
C: Hi3*6
D: Hi 3*6
答案: 【 Hi3*6

2、单选题:
‌#print("Test")‌‌print("abc") #print("xyz")‌‌程序输出‌‌‌
选项:
A: Testabc xyz
B: Testabcxyz
C: abc
D: abc xyz
答案: 【 abc

3、单选题:
‎s=b"x41x42"‌‎s=s+b"x43"‌‎print(s)‌‎结果类型是:‌‎‌
选项:
A: bytes
B: str
C: int
D: float
答案: 【 bytes

4、单选题:
‌a=1​‌b=-2​‌print("#%3d#%-3d" %(a,b))​‌结果是:​‌​
选项:
A: 1 -2
B: #1 #-2
C: #1 #2
D: #3 #-3
答案: 【 #1 #-2

5、单选题:
​a=0x12‏​print(a)‏​‏
选项:
A: 0x12
B: 12
C: 18
D: 0x
答案: 【 18

6、单选题:
‌一元二次方程a*x*x+b*x+c=0的其中一个根是‍‌‍
选项:
A: x=(-b+math.sqrt(b*b-4*a*c))/2*a
B: x=(-b+math.sqrt(b*b-4*a*c))/2/a
C: x=(-b+math.sqrt(b*b-4*a*c))/(2/a)
D: x=-b+math.sqrt(b*b-4*a*c)/2*a
答案: 【 x=(-b+math.sqrt(b*b-4*a*c))/2/a

7、单选题:
‏#计算x的3次方‌‏x=7‌‏y=_____‌‏print(y)‌‏空格填入的是‌‏‌
选项:
A: x*3
B: x**3
C: x*x*2
D: 3*x
答案: 【 x**3

8、单选题:
‌x=input("x=")​‌x=2*float(x)​‌print(x)​‌输入​‌x=23b​‌输出结果是​
选项:
A: 46
B: 0
C: 错误
D: 4
答案: 【 错误

9、单选题:
‍x=input("x=")‍‍print(type(x))‍‍输入‍‍x=1‍‍输出结果是‍
选项:
A: 1
B: int
C: float
D: str
答案: 【 str

10、单选题:
‍x=1‌‍y=0‌‍print(x/y)‌‍结果是‌
选项:
A: NaN
B: 错误
C: None
D: null
答案: 【 错误

表达式

1、判断题:
‏a=2‍‏x=(a+1)/2/a‍‏y=(a+1)/2*a‍‏print(x,y)‍‏那么x,y是一样的?‍
选项:
A: 正确
B: 错误
答案: 【 错误

第2章 Python程序语句

for

1、单选题:
‍for i in range(3):‌‍    print(i,end=' ')‌‍print(i)‌‍结果是:‌‍‌
选项:
A: 0 1 2 2
B: 0 1 2 3
C: 0122
D: 0123
答案: 【 0 1 2 2

If

1、判断题:
‌if x>0:‎‌   print(x)‎‌else‎‌   print("Not positive")‎‌正确吗?‎
选项:
A: 正确
B: 错误
答案: 【 错误

while

1、单选题:
‌i=1‎‌while i<10:‎‌    if i%2==0:‎‌        break‎‌print(i)‎‌结果是:‎
选项:
A: 1
B: 2
C: 10
D: 9
答案: 【 2

嵌套

1、单选题:
‎题目:两个兵乓球队进行比赛,各出三人。甲队为a,b,c三人,乙对为x,y,z三人。以抽签决定比赛名单。有向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程找到三队赛手的名单。‏‎for i in range(ord('x'),ord('z') + 1):‏‎    for j in range(ord('x'),ord('z') + 1):‏‎        if i != j:‏‎            for k in range(ord('x'),ord('z') + 1):‏‎                if (i != k) and (j != k):‏‎                    if (__________________________________________):‏‎                        print( 'order is a -- %st b -- %stc -- %s' % (chr(i),chr(j),chr(k)))‏‎‏
选项:
A: i != ord('x')) and (k != ord('x')) and (k != ord('z')
B: i == ord('x')) and (k != ord('x')) and (k != ord('z')
C: i != ord('x')) and (k == ord('x')) and (k != ord('z')
D: i != ord('x')) and (k != ord('x')) and (k == ord('z')
答案: 【 i != ord('x')) and (k != ord('x')) and (k != ord('z')

异常

1、判断题:
‍x=input()‎‍x=int(x)‎‍print(x)‎‍执行时输入3.14,那么会有异常?‎
选项:
A: 正确
B: 错误
答案: 【 正确

测验2

1、单选题:
‌打印出100内所有的偶数,每行5个‎‌j=0‎‌for i in _____________‎‌    print("%4d" %i,end="")‎‌    j=j+1‎‌    if j%5==0:‎‌        print()‎‌缺少的语句是‎
选项:
A:  range(2,102,2):
B:  range(2,100,2):
C:  range(2,101):
D:  range(2,101,2):
答案: 【  range(2,101,2):

2、单选题:
‎题目:判断101-200之间有多少个素数,并输出所有素数。​‎思路:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。​‎h = 0​‎leap = 1​‎from math import sqrt​‎from sys import stdout​‎for m in range(0,201):​‎    k = int(sqrt(m + 1))​‎    for i in range(2,k + 1):​‎        if______:​‎            leap = 0​‎            break​‎    if leap == 1:​‎        print ('%-4d' % m)​‎        h += 1​‎        if h % 10 == 0:​‎            print ('')​‎    leap = 1​‎print ('The total is %d' % h)​‎​
选项:
A:  m % i == 1
B:  m % i == 0
C:  i% m == 0
D:  i%m==1
答案: 【  m % i == 0

3、单选题:
​题目:打印出所有的“水印花数”,所谓“水印花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水印花数”,因为153=1的三次方+5的三次方+3的三次方。 ‍​需求:打印所有“水印数”,例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方‍​思路:利用for循环控制100-999个数,每个数分解出个位,十位,百位。‍​for n in range(100,1000):‍​    i = n // 100 #百位数‍​    _________________ #十位数‍​    k = n % 10  #个位数‍​    if n == i ** 3 + j ** 3 + k ** 3:‍​        print(n)‍​‍
选项:
A: j = (n / 10) % 10
B: j = (n // 10) % 10
C: j = (n % 10) % 10
D: j = (n % 10) // 10
答案: 【 j = (n // 10) % 10

4、单选题:
‏题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5.​‏思路:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:​‏    (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。​‏    (2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。​‏    (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。​‏from sys import stdout​‏n = int(input("input number:"))​‏print ("n = %d" % n)​‏for i in range(2,n + 1):​‏    while __________​‏        if n % i == 0:​‏            stdout.write(str(i))​‏            stdout.write("*")​‏            n = n / i​‏        else:​‏            break​‏print( "%d" % n)​‏​
选项:
A: n == i:
B: n != i:
C: n >i:
D: n <i:
答案: 【 n != i:

5、单选题:
‌题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-80分之间的用B表示,60分以下的用C表示。 ​‌思路:(a>b)?a:b这是条件运算符的基本例子。​‌score = int(input('input score:'))​‌if score >= 90:​‌

剩余75%内容付费后可查看

发表评论

电子邮件地址不会被公开。 必填项已用*标注