測驗4
選擇題
1.哪個選項不符合上述程序空白處的語法要求?{1;2;3;4;5}
for var in ___:
print(var)
2.哪個選項是以上程序的輸出結果?0 1
for i in range(0,2):
print(i)
3.哪個選項給出了上述程序的輸出次數?14
k=10000
while k>1:
print(k)
k=k/2
4.哪個選項是程序的三種基本結構?順序結構,循環結構,分支結構
5.哪個選項關於循環結構的描述是錯誤的?死循環無法退出,沒有任何作用
6.關於Python語句P=-P,哪個選項的描述是正確的?給P賦值爲它的負數
7.哪個選項是用來判斷當前Python語句在分支結構中?縮進
8.哪個選項是下面代碼的執行結果?PYHON
for s in "PYTHON":
if s=="T":
continue
print(s,end="")
9.哪個選項是random庫中用於生成隨機小數的函數?random()`
10.關於try-except,哪個選項的描述是錯誤的?使用了異常處理,程序將不會再出錯
四位玫瑰數
描述
四位玫瑰數是4位數的自冪數。自冪數是指一個 n 位數,它的每個位上的數字的 n 次冪之和等於它本身。
例如:當n爲3時,有1^3 + 5^3 + 3^3 = 153,153即是n爲3時的一個自冪數,3位數的自冪數被稱爲水仙花數。
請輸出所有4位數的四位玫瑰數,按照從小到大順序,每個數字一行。
def fun(n):
max = pow(10, n)
ls = []
for i in range(1, max):
t = str(i)
l = len(t)
sum = 0
for j in range(l):
sum += pow(int(t[j]), n)
if sum == i:
ls.append(i)
return ls
ls = fun(4)
for i in ls:
if i >= 1000:
print(i)
100以內素數之和
描述
求100以內所有素數之和並輸出。
素數指從大於1,且僅能被1和自己整除的整數。
提示:可以逐一判斷100以內每個數是否爲素數,然後求和。
def fun(num):
sum = 0
for num in range(2, num):
n = int(pow(num, 0.5)) + 1
for i in range(2, n):
if num % i == 0:
break
else:
sum += num
return sum
sum = fun(100)
print(sum)