Python--第2次平时作业
目錄
一、單項選擇題
二、程序填空題
三、題目
四、測試代碼
一、單項選擇題
| 題號 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 答案 | D | D | D | D | D | D | C | D | D | C |
| 題號 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 答案 | D | C | B | B | D | B | C | A | B | A |
| 題號 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 答案 | B | B | A | A | D | C | D | B | B | D |
| 題號 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
| 答案 | A | D | B | A | B | B | C | A | B | B |
| 題號 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 |
| 答案 | B | C | C | C | D | C | B | A | C | B |
| 題號 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 |
| 答案 | C | D | B | D | D | B | C | A | C | C |
| 題號 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 |
| 答案 | B | C | C | C | B | B | A | B | D | C |
| 題號 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 |
| 答案 | B | C | C | B | A | C | A | A | C | B |
| 題號 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 |
| 答案 | C | B | B | C | C | B | C | C | D | B |
| 題號 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 |
| 答案 | D | C | A | D | C | A | A | B | B | C |
二、程序填空題
101. miD=c
102. maX-miN
103. miD=c
104. miD=c
105. maX,miN.c
106. b,c,a
107. c,b,a
108. c,b,a
109. a,c,b
110. b,c,a
111. x%2
112. x%2==0 and x%3==0 and x%5
113. pow(x,2)+pow(y,2)>1 and pow(x,2)+pow(y,2)<4
114. elif x==0 and y==0
115. n
116. i <= n
117. eval(i)
118. x!=g
119. str(j)
120. n
121. i<=x
122. 0,0,0,0
123. n-2*i-2
124
def is_triangle(a, b, c):
??? if a <= 0 or b <= 0 or c <= 0:
??????? raise Exception('三角形三邊均不能為非正數.')
??? if a + b > c and a + c > b and b + c > a:
??????? print(f'這三邊a= {a}, b={b}, c={c}能構成三角形')
??????? a = max(a, b, c)
??????? b = min(a, b, c)
??????? if (a == b and a == c):
??????????? print('等邊三角形')
??????? if (a == b or a == c or b == c):
??????????? print('等腰三角形')
??????? if (a ** 2 == b ** 2 + c ** 2):
??????????? print('直角三角形')
??? else:
??????? raise Exception('三角形任意兩邊之和需要大于第三邊')
if __name__ == '__main__':
??? try:
??????? a = int(input('Enter the first line:'))
??????? b = int(input('Enter the second line:'))
??????? c = int(input('Enter the third line:'))
??????? is_triangle(a, b, c)
??? except Exception as i:
? ??????print(i)
125
# 最大公約數和最小公倍數
a = int(input('please enter 1st num:'))
b = int(input('please enter 2nd num:'))
s = a * b
while a % b != 0:
??? a, b = b, (a % b)
print(b, '是最大公約數')
print(s//b, '是最小公倍數')
三、題目
1. 執行語句:print(5>4>3)后的輸出結果是(? D?? )
A. 0?? B. 1? ??C. False ???D. True
2. 執行語句:print(3<=4)后的輸出結果是(D???? )
A. 0?? B. 1??? C. False??? D. True
3. 執行語句:print(4>=4)后的輸出結果是(?? D? )
A. 0?? B. 1??? C. False??? D. True
4. 執行語句:print(3<5>4)后的輸出結果是(? D?? )
A. 0?? B. 1??? C. False??? D. True
5. 執行語句:print(3<=5>=4)后的輸出結果是(? D?? )
A. 0?? B. 1??? C. False??? D. True
6. 執行語句:print(3<=3>=3)后的輸出結果是(??? D )
A. 0?? B. 1??? C. False??? D. True
7. 執行語句:print(3<=3==4>=4)后的輸出結果是(?? C? )
A. 0?? B. 1?? ?C. False??? D. True
8. 執行語句:print((3<=3)==(4>=4))后的輸出結果是(?? D? )
A. 0?? B. 1??? C. False??? D. True
9. 執行語句:print((3!=4)==(5!=6))后的輸出結果是(?? D? )
A. 0?? B. 1??? C. False??? D. True
10. 執行語句:print(3!=4==5!=6)后的輸出結果是(?? C? )
A. 0?? B. 1??? C. False??? D. True
11. 執行語句:print(3!=4<5!=6)后的輸出結果是(? D?? )
A. 0?? B. 1??? C. False??? D. True
12. 執行語句:print((3!=4)<(5!=6))后的輸出結果是( C??? )
A. 0?? B. 1??? C. False??? D. True
13. 執行語句:print(True==1)后的輸出結果是(? B?? )
A. False??? B. True? ??C. 1 ???D. 出錯
14. 執行語句:print(True>False)后的輸出結果是(?? B? )
A. False??? B. True??? C. 1??? D. 出錯
15. 執行語句:print(True>'A')后的輸出結果是(?? A? )
A. False??? B. True??? C. 1??? D. 出錯
16. 執行語句:print(True!='A')后的輸出結果是(?? B? )
A. False??? B. True??? C. 1??? D. 出錯
17. 執行語句:print(True+False)后的輸出結果是(??? C )
A. False??? B. True??? C. 1??? D. 出錯
18. 執行語句:print([1,2,3]>[2,3])后的輸出結果是(? A?? )
A. False??? B. True??? C. 1??? D. 出錯
19. 執行語句:print([1,2,3]>[1,2])后的輸出結果是( B??? )
A. False??? B. True??? C. 1??? D. 出錯
20. 執行語句:print([1,2,3]>[2])后的輸出結果是(? A?? )
A. False??? B. True??? C. 1??? D. 出錯
21. 執行語句:print([3,2,1]>[2,3,1])后的輸出結果是(?? B? )
A. False??? B. True??? C. 1??? D. 出錯
22. 執行語句:print([3,2,1]>[2,8,9])后的輸出結果是(? B?? )
A. False??? B. True??? C. 1??? D. 出錯
23. 執行語句:print({3,2,1}>{2,3,1})后的輸出結果是(?? A? )
A. False??? B. True??? C. 1??? D. 出錯
24. 執行語句:print({9}>{3})后的輸出結果是(?? A? )
A. False??? B. True??? C. 1??? D. 出錯
25. 執行語句:print((3,2,1)>(3,1,2))后的輸出結果是(?? D? )
A. 0?? B. 1??? C. False??? D. True
26. 執行語句:print({1,2,3}!={3,2,1})后的輸出結果是( C??? )
A. 0?? B. 1??? C. False??? D. True
27. 執行語句:print({'a':9}>{'b':3})后的輸出結果是(? D?? )
A. False??? B. True??? C. 1??? D. 出錯
28. 執行語句:print({'a':9}!={'b':3})后的輸出結果是(? B?? )
A. False??? B. True??? C. 1??? D. 出錯
29. 執行語句:print([3]!=3)后的輸出結果是(?? B? )
A. False??? B. True??? C. 1??? D. 出錯
30. 執行語句:print([3]>=2)后的輸出結果是(?? D? )
A. False??? B. True??? C. 1??? D. 出錯
31. 執行語句:print('abc'=={'a':2,'b':3})后的輸出結果是(? D?? )
A. False??? B. True??? C. 1??? D. 出錯
32. 執行語句:print('abc'>={'a':2,'b':3})后的輸出結果是(? D? )
A. False??? B. True??? C. 1??? D. 出錯
33. 執行語句:print(3 and 4)后的輸出結果是(? B?? )
A. 3?? B. 4??? C. False??? D. True
34. 執行語句:print(3 or 4)后的輸出結果是(?? A? )
A. 3?? B. 4??? C. False??? D. True
35. 執行語句:print(4 or 3)后的輸出結果是(? B?? )
A. 3?? B. 4??? C. False??? D. True
36. 執行語句:print(3 and 4 or 5)后的輸出結果是(?? B? )
A. 3?? B. 4??? C. 5??? D. True
37. 執行語句:print(3 and 4 and 5)后的輸出結果是(?? C? )
A. 3?? B. 4??? C. 5??? D. True
38. 執行語句:print(3 or 4 and 5)后的輸出結果是(??? A )
A. 3?? B. 4??? C. 5??? D. True
39. 執行語句:print(3 and 4+5<6 or 7)后的輸出結果是(B?? )
A. 3?? B. 7??? C. False??? D. True
40. 執行語句:print(() or [] and {})后的輸出結果是(? B?? )
A. ()?? B. []??? C. {}??? D. 出錯
41. 執行語句:print(not 0 and 1 or 2)后的輸出結果是( B? )
A. 0?? B. 1??? C. 2??? D. 出錯
42. 執行語句:print(not 1 or 2 and 3)后的輸出結果是(??? C )
A. 1?? B. 2??? C. 3??? D. 出錯
43. 執行語句:print(1 and not 2 or 3)后的輸出結果是(? C?? )
A. 1?? B. 2??? C. 3??? D. 出錯
44. 執行語句:print(not 3)后的輸出結果是( C??? )
A. -3?? B. 0??? C. False??? D. 出錯
45. 執行語句:print(0 is not 1)后的輸出結果是(? D?? )
A. 0?? B. 1??? C. False??? D. True
46. 執行語句:print(not 2 is not 3)后的輸出結果是(? C?? )
A. 0?? B. 1??? C. False??? D. True
47. 執行語句:print(2 if 2>3 else 3)后的輸出結果是(? B?? )
A. 2?? B. 3??? C. True??? D. 出錯
48. 執行語句:print(2 if not 2>3 else 3)后的輸出結果是(? A )
A. 2?? B. 3??? C. True??? D. False
49. 執行語句:print(4>2+3)后的輸出結果是(?? C? )
A. 4?? B. 5??? C. False??? D. True
50. 執行語句:print(1 if 2>3 else (4 if 5>6 else 7))后的輸出結果是(?? B? )
A. 0?? B. 7??? C. False??? D. True
51. 當Python程序進入“死循環”狀態時,可以按那個組合鍵來中斷程序的運行?( C??? )
A. <Shift>+<Q> ???B. <Shift>+<Z> ????C. <Ctrl>+<C> ????D. <Ctrl>+<X>
52. 運行下面程序段后的輸出結果是(???? D)
s,i=0,1
while i<6:
??? s+=i
??? print(s)
A. 0?? B. 15??? C. 21??? D. 死循環
53. 運行下面程序段后的輸出結果是(??? B )
s,i=0,6
while i>1:
??? s+=i
??? i-=2
print(s)
A. 0?? B. 12??? C. 13??? D. 死循環
54. 運行下面程序段后的輸出結果是(? D?? )
s,i=0,1
while i!=6:
??? s+=i
??? i+=2
print(s)
A. 0 ???B. 1 ????C. 9 ????D. 死循環
55. 運行下面程序段后的輸出結果是(? D?? )
s,i=0,1
while i<5:
??? s+=iB
i=i+1
print(s)
A. 0 ???B. 10 ????C. 15 ????D. 死循環
56. 運行下面程序段后的輸出結果是(??? B )
s,i=0,0
while i<4:
??? i=i+1
??? s+=i
??? if i==3:break
??? s+=i
print(s)
A. 0?? B. 9??? C. 17??? D. 死循環
57. 運行下面程序段后的輸出結果是(? D?? )
s,i=0,0
while i<4:
??? i=i+1
??? s+=i
??? if i==3:continue
??? s+=i
print(s)
A. 0?? B. 9??? C. 17??? D. 死循環
58. 運行下面程序段后的輸出結果是(? C?? )
i=1
while i<4:
??? i=i+1
??? if i==2:break
??? print('AA',end='')
else:
??? print('BB',end='')
A. 無?? B. BB?? C. AABB??? D. AAAABB
59. 運行下面程序段后的輸出結果是(? D?? )
i=1
while i<3:
??? i=i+1
??? if i==2:continue
??? print('AA',end='')
else:
??? print('BB',end='')
A. AA?? B. BB?? C. AABB??? D. AAAABB
60. 運行下面程序段后的輸出結果是(?? C? )
n,i=0,0
while True:
??? i+=1
??? if i>10:break
??? if i%3!=0:continue
??? print(i,end='')
A. 0?? B. 1??? C. 369??? D. 死循環
61. 運行下面程序段后的輸出結果是( B??? )
s,i=0,1
for i in range(3):
??? s+=i
??? i+=2
else:
??? print(s)
A. 1?? B. 3??? C. 4??? D. 6
62. 運行下面程序段后的輸出結果是(? C?? )
i=2
for i in range(4):
??? print(i,end='')
A. 23?? B. 234??? C. 0123??? D. 死循環
63. 運行下面程序段后的輸出結果是(?? C? )
i=2
for i in range(4):
??? print(i,end='')
??? i=2
A. 23?? B. 234??? C. 0123??? D. 死循環
64. 運行下面程序段后的輸出結果是(?? C? )
for i in range(1,4):
??? print(i,end='')
A. 14?? B. 0123?? ?C. 123??? D. 1234
65. 運行下面程序段后的輸出結果是(? B?? )
for i in range(1,7,2):
??? print(i,end='')
A. 172?? B. 135??? C. 1357??? D. 123456
66. 運行下面程序段后的輸出結果是( B??? )
for i in range(2,-2,-2):
??? print(i,end='')
A. 2?? B. 20??? C. 20-2??? D. 無
67. 運行下面程序段后的輸出結果是(? A?? )
for i in range(4):
??? for j in range(i):
??????? print(i,end='')
A. 122333??? B. 1223334444??? C. 01234? ??D. 0123
68. 運行下面程序段后的輸出結果是(? B?? )
for i in range(3):
??? for j in range(3):
??????? print(i+j,end='')
A. 123123123?? B. 012123234??? C. 123234345??? D. 111222333
69. 運行下面程序段后的輸出結果是(?? D? )
for i in range(3):
??? for j in range(3):
??????? print(i+j,end='')
??????? if i==j:
??????????? break
A. 0?? B. 01234??? C. 135??? D. 012234
70. 運行下面程序段后的輸出結果是(?? C? )
for i in range(4):
??? for j in range(3):
??????? if i>j:
??????????? continue
??????? print(i+j,end='')
A. 00123?? B. 01234??? C. 012234??? D. 011234
71. 運行下面程序段后的輸出結果是(?? B? )
s='ABCD'
for i in range(4):
??? for j in range(4-i):
??????? print(s[i],end='')
A. AAABBC?? B. AAAABBBCCD??? C. AABABC??? D. AABABCABCD
72. 運行下面程序段后的輸出結果是(? C?? )
s='ABCD'
for i in s:
??? for j in i:
??????? print(j,end='')
A. 0123?? B. DCBA??? C. ABCD??? D. AABABCABCD
73. 運行下面程序段后的輸出結果是(?? C? )
for i in [1,[2,3],(4,5),6]:
??? print(i,end=',')
A. 1,2,3,4,5,6,?? B. 1,2,3,(4, 5),6,??? C. 1,[2, 3],(4, 5),6,??? D. 出錯
74. 運行下面程序段后的輸出結果是( B??? )
for i in ['AAA','BB','CD']:
??? print(i,end='')
A. 'AAA','BB','CD'?? B. AAABBCD??? C. 012??? D. 出錯
75. 運行下面程序段后的輸出結果是(? A?? )
k=0
for i in ['ABC'*2,[1,2,3]*2,(1,2,3)*2]:
??? k+=1
else:
??? print(k)
A. 3?? B. 6??? C. 18??? D. 出錯
76. 運行下面程序段后的輸出結果是(? C?? )
k=0
for i in 'ABC'+'EF'*2:
??? k+=1
else:
??? print(k)
A. 1?? B. 3??? C. 7??? D. 出錯
77. 運行下面程序段后的輸出結果是(?? A? )
k=0
for i in {2,(2,3),(2,3),2,3}:
??? k+=1
else:
??? print(k)
A. 3?? B. 4??? C. 5??? D. 7
78. 運行下面程序段后的輸出結果是(?? A? )。
for i in {'a':2,'b':3,'c':4}:
??? print(i,end='')
A. abc?? B. 234??? C. a2b3c4??? D. 出錯
79. 運行下面程序段后的輸出結果是(?? C? )
k=0
for i in [(),[],{},'']:
??? k+=1
else:
??? print(k)
A. 0?? B. 1??? C. 4??? D. 出錯
80. 運行下面程序段后的輸出結果是(? B?? )
k=0
for i in '電子科技大學':
??? k+=1
else:
??? print(k)
A. 0?? B. 6??? C. 12??? D. 出錯
81. 運行下面程序段后的輸出結果是(?? C? )
t=[i*i for i in range(5)]
print(t)
A. [0, 1, 2, 3, 4]??? B. [25]??? C. [0, 1, 4, 9, 16]??? D. 出錯
82. 運行下面程序段后的輸出結果是( B??? )
t=[i**3 for i in range(5) if i%2==0]
print(t)
A. [0, 1, 8, 27, 64]? ??B. [0, 8, 64]??? C. [125]??? D. 出錯
83. 運行下面程序段后的輸出結果是(? B?? )
t=[i+j for i in 'ABC' for j in '23']
print(t)
A. ['A2A3B2B3C2C3']?????? B. ['A2', 'A3', 'B2', 'B3', 'C2', 'C3']
C. ['ABC23']?????????????? D. ['ABC','23']
84. 運行下面程序段后的輸出結果是(C???? )
d={'x':2,'y':3,'z':4}
for i,j in d.items():
??? print('{}={}'.format(i,j),end=';')
A. 'x'=2;'y'=3;'z'=4;? ??B. 'x':2;'y':3;'z':4;???? C. x=2;y=3;z=4;???? D. 出錯
85. 運行下面程序段后的輸出結果是(? C?? )
d={'x':2,'y':3,'z':4}
t=[i+'='+str(j) for i,j in d.items()]
print(t)
A. [x=2, y=3, z=4] ???????B. ['x':2,'y':3,'z':4]
C. ['x=2', 'y=3', 'z=4']???? D. ['x=2, y=3, z=4']
86. 運行下面程序段后的輸出結果是( B??? )
k=0
t=[22,'55',33,0.66,44,'AA',True]
for i in t:
??? if type(i)==type(0):
??????? k+=1
else:
??? print(k)
A. 0? ????B. 3???? C. 5????? D. 7
87. 運行下面程序段后的輸出結果是(?? C? )
x=[[0],(0),(0,),{0},{0:0},0,'0',0.0,list(),tuple(),set(),dict(),'']
k=0
for i in x:
??? if i:
??????? k+=1
else:
??? print(k)
A. 0? ????B. 4????? C. 5????? D. 出錯
88. 運行下面程序段后的輸出結果是( C??? )
t=['123','456','789']
s,i='',0
for k in t:
??? s+=k[i]+t[i][i]
??? i+=1
else:
??? print(s)
A. 123456789? ????B. 147258369????? C. 115599????? D. 123145657899
89. 運行下面程序段時輸入“3”后的輸出結果是(?? D? )
k=int(input('key='))
s=[chr(i) for i in range(ord('a'),ord('z')+1)]
t=s[k:]+s[:k+1]
print(t[k])
A. c? ????B. d????? C. f????? D. g
90. 運行下面程序段時輸入“3”后的輸出結果是(?? B? )
m=''
k=int(input('key='))
t='attack'
s=[chr(ord(i)+k) for i in t]
for i in s:
??? m+=i
print(m)
A. kcatta? ????B. dwwdfn????? C. nfdwwd????? D. ttakca
91. 運行下面程序段時輸入“3”后的輸出結果是(? D?? )
m=''
k=int(input('key='))
t='tomisaspy'
s=[chr(ord('a')+(ord(i)+k-ord('a'))%26) for i in t]
for i in s:
??? m+=i
print(m)
A. ypsasimot? ????B. bsvdvlprw????? C. YPSASIMOT????? D. wrplvdvsb
92. 運行下面程序段后的輸出結果是(??? C )
m=''
s='uEstc'
t=[i+chr(ord(j)+32) for i in s if 'a'<=i<='z' for j in s if 'A'<=j<='Z']
for i in t:
??? m+=i
print(m)
A. uestc? ????B. UESTC????? C. uesetece????? D. UeSTC
93. 運行下面程序段后的輸出結果是( A??? )
t=''
s='uEstc'
for i in s:
??? t+=i if 'a'<=i<='z' else chr(ord(i)+32)
print(t)
A. uestc? ????B. UESTC????? C. uesetece????? D. UeSTC
94. 運行下面程序段后的輸出結果是(? D?? )
m=''
s='uEstc'
t=[chr(ord(i)-32) if 'a'<=i<='z' else chr(ord(i)+32) for i in s]
for i in t:
??? m+=i
print(m)
A. uestc? ????B. UESTC????? C. uesetece????? D. UeSTC
95. 運行下面程序段后的輸出結果是(? C?? )
m=''
s='uEstc'
t=[chr(ord(i)-32) if 'a'<=i<='z' else i for i in s]
for i in range(len(t)-1,-1,-1):
??? m+=t[i]
print(m)
A. CTSeU? ????B. UESTC????? C. CTSEU????? D. UeSTC
96. 運行下面程序段后的輸出結果是( A??? )
t=''
x='uestc'
s='uaebsxtyc'
for i in s:
??? if i not in x:
??????? continue
??? t+=i
print(t)
A. uestc????? B. ctseu????? C. UESTC????? D. CTSEU
97. 運行下面程序段后的輸出結果是( A??? )
t=''
s='a1b2c3#d@f*'
for i in s:
??? if not('a'<=i<='z' or 'A'<=i<='Z'):
??????? continue
??? t+=i
print(t)
A. abcdf? ????B. fdcba????? C. 123#@*????? D. *@#321
98. 運行下面程序段后的輸出結果是(?? B? )
k=0
x='e'
s='abecdef'
for i in s:
??? if i==x:
??????? break
??? k+=1
print(k)
A. 0? ????B. 2????? C. 5????? D. 2,5
99. 運行下面程序段后的輸出結果是(? C?? )
k=0
x='e'
s='abecedef'
for i in s:
??? if i==x:
??????? k+=1
print(k)
A. 2? ????B. 3????? C. 4????? D. 5
100. 運行下面程序段后的輸出結果是(?? A? )
k=0
t=[]
x='e'
s='abecdefghe'
for i in s:
??? if i==x:
??????? t+=[k]
??? k+=1
print(t)
A. [0, 1, 2]? ????B. [1, 2, 3]????? C. [2, 5, 9]????? D. [3, 6, 10]
二、程序填空題
(為便于閱卷,不用抄題,只提交各小題答案。請將答案填寫在答題紙上。)
101. 下面程序的功能是從鍵盤讀入三個整數,將其最大者、居中者和最小者分別裝入maX、miD和miN三個變量中。程序運行后的輸入輸出情況如下圖所示。請在橫線處填寫適當的語句或表達式將程序補充完整。
源程序:
a,b,c=eval(input('a,b,c='))
if a>b:
??? maX=a
??? miN=b
else:
??? maX=b
??? miN=a
if c>maX:
??? miD=maX
??? maX=c
elif c<miN:
??? miD=miN
miN=c
else:
???????? miD=c
????????
print('max={},mid={},min={}'.format(maX,miD,miN))
102. 下面程序的功能是從鍵盤讀入三個整數,將其最大者、居中者和最小者分別裝入maX、miD和miN三個變量中。程序運行后的輸入輸出情況如下圖所示。請在橫線處填寫適當的語句或表達式將程序補充完整。
源程序:
a,b,c=eval(input('a,b,c='))
maX,miN=(a,b) if a>b else (b,a)
maX,miD,miN=(c,maX,miN) if c>maX else ((maX,miN,c) if c<miN else (maX,c,miN___))
print('max={},mid={},min={}'.format(maX,miD,miN))
106. 下面程序的功能是從鍵盤讀入三個整數,將其最大者、居中者和最小者分別裝入maX、miD和miN三個變量中。程序運行后的輸入輸出情況如下圖所示。請在橫線處填寫適當的語句或表達式將程序補充完整。
源程序:
a,b,c=eval(input('a,b,c='))
a,b,c=eval(input('a,b,c='))
maX,miD,miN=((a,b,c) if b>c else ((a,c,b) if a>c else \
(c,a,b))) if a>b else ((c,b,a) if b<c else ((b,a,c) if a>c else (b, c, a_____________)))
print('max={},mid={},min={}'.format(maX,miD,miN))
107. 下面程序的功能是從鍵盤讀入三個整數,將其最大者、居中者和最小者分別裝入maX、miD和miN三個變量中。程序運行后的輸入輸出情況如下圖所示。請在橫線處填寫適當的語句或表達式將程序補充完整。
源程序:
a,b,c=eval(input('a,b,c='))
if a>b>c:
??? maX,miD,miN=a,b,c
elif a>c>b:
??? maX,miD,miN=a,c,b
elif b>a>c:
??? maX,miD,miN=b,a,c
elif b>c>a:
??? maX,miD,miN=b,c,a
elif c>a>b:
??? maX,miD,miN=c,a,b
else:
??? maX,miD,miN=c,b,a_________________________________________________
print('max={},mid={},min={}'.format(maX,miD,miN))
108. 下面程序的功能是從鍵盤讀入三個整數,將其最大者、居中者和最小者分別裝入maX、miD和miN三個變量中。程序運行后的輸入輸出情況如下圖所示。請在橫線處填寫適當的語句或表達式將程序補充完整。
源程序:
a,b,c=eval(input('a,b,c='))
if a>b:
??? if b>c:
??????? maX,miD,miN=a,b,c
??? elif a>c:
??????? maX,miD,miN=a,c,b
??? else:
??????? maX,miD,miN=c,a,b
elif b>c:
??? if c>a:
??????? maX,miD,miN=b,c,a
??? else:
??????? maX,miD,miN=b,a,c
else:
??? maX,miD,miN=c,b,a_________________________________________________
print('max={},mid={},min={}'.format(maX,miD,miN))
109. 下面程序的功能是從鍵盤讀入三個整數,將其最大者、居中者和最小者分別裝入maX、miD和miN三個變量中。程序運行后的輸入輸出情況如下圖所示。請在橫線處填寫適當的語句或表達式將程序補充完整。
源程序:
a,b,c=eval(input('a,b,c='))
maX=max(a,b,c)
if a!=maX:
??? if a>c:
??????? maX,miD,miN=b,a,c
??? elif a>b:
??????? maX,miD,miN=c,a,b
??? elif b>c:
??????? maX,miD,miN=b,c,a
??? else:
??????? maX,miD,miN=c,b,a
elif b>c:
??? maX,miD,miN=a,b,c
else:
??? maX,miD,miN=a,c,b_________________________________________________
print('max={},mid={},min={}'.format(maX,miD,miN))
110. 下面程序的功能是從鍵盤讀入三個整數,將其最大者、居中者和最小者分別裝入maX、miD和miN三個變量中。程序運行后的輸入輸出情況如下圖所示。請在橫線處填寫適當的語句或表達式將程序補充完整。
源程序:
a,b,c=eval(input('a,b,c='))
maX=max(a,b,c)
miN=min(a,b,c)
if maX!=b!=miN:
??? if a>c:
??????? maX,miD,miN=a,b,c
??? else:
??????? maX,miD,miN=c,b,a
elif maX!=a!=miN:
??? if b>c:
??????? maX,miD,miN=b,a,c
??? else:
??????? maX,miD,miN=c,a,b
elif a>b:
??? maX,miD,miN=a,c,b
else:
??? maX,miD,miN=b,c,a________________________________________________
print('max={},mid={},min={}'.format(maX,miD,miN))
111. 下面程序的功能是從鍵盤讀入一個整數(可能是正數、0或負數),判斷并輸出它是奇數還是偶數。程序運行后的輸入輸出情況如下圖所示。請在橫線處填寫適當的語句或表達式將程序補充完整。
源程序:
x=eval(input('x='))
if x % 2 != 0_____________:
??? print('{}是奇數'.format(x))
else:
??? print('{}是偶數'.format(x))
112. 下面程序的功能是從鍵盤讀入一個整數,如果它是能被3整除且不能被5整除的偶數,就輸出“AAA”,否則就輸出“BBB”。程序運行后的輸入輸出情況如下圖所示。請在橫線處填寫適當的語句或表達式將程序補充完整。
源程序:
x=eval(input('x='))
if x%3==0 and x%5!=0______________________________:
??? print('AAA')
else:
??? print('BBB')
113. 下面程序的功能是從鍵盤讀入平面直角坐標系中一個點的坐標x和y,如果點(x,y)落在圓? 和圓? 組成的圓環內(不壓線)時,輸出“AAA”,否則輸出“BBB”。程序運行后的輸入輸出情況如下圖所示。請在橫線處填寫適當的語句或表達式將程序補充完整。
源程序:
x,y=eval(input('x,y='))
if 1 <x **2+y**2<4______________________________________________:
??? print('AAA')
else:
??? print('BBB')
114. 下面程序的功能是從鍵盤讀入平面直角坐標系中一個點的坐標x和y,輸出點(x,y)所屬象限。如果點(x,y)落在坐標軸上(非原點)時,就輸出其在哪個坐標軸上。如果點(x,y)落在坐標原點時,就輸出其落在坐標原點了。程序運行后的輸入輸出情況如下圖所示。請在橫線處填寫適當的語句或表達式將程序補充完整。
源程序:
x,y=eval(input('x,y='))
if x>0 and y>0:
??? print('點({},{})在第一象限中'.format(x,y))
elif x<0 and y>0:
??? print('點({},{})在第二象限中'.format(x,y))
elif x<0 and y<0:
??? print('點({},{})在第三象限中'.format(x,y))
elif x>0 and y<0:
??? print('點({},{})在第四象限中'.format(x,y))
elif x==0 and y!=0:
??? print('點({},{})在y軸上'.format(x,y))
elif x!=0 and y==0:
??? print('點({},{})在x軸上'.format(x,y))
else___________:
??? print('點({},{})在坐標原點'.format(x,y))
115. 下面程序的功能是從鍵盤讀入一個整數,求它的各位數字之和。程序運行后的輸入輸出情況如下圖所示。請在橫線處填寫適當的語句或表達式將程序補充完整。
? 。程序運行后的輸入輸出情況如下圖所示。請在橫線處填寫適當的語句或表達式將程序補充完整。
源程序:
n=int(input('n='))
s,i,t=0,1,1
while i<=n _________________________________________________:
??? t=t*i
??? s+=t
??? i+=1
print('s={}'.format(s))
117. 下面程序的功能是從鍵盤讀入一個整數,求它的各位數字之和。程序運行后的輸入輸出情況如下圖所示。請在橫線處填寫適當的語句或表達式將程序補充完整。
源程序:
n=input('n=')
s=0
for i in n:
??? s+=int(i)_________________________________________________
else:
??? print('s={}'.format(s))
118. 下面程序的功能是猜數字游戲。隨機生成一個1~20的正整數,讓用戶去猜該數,從鍵盤讀入用戶提交的猜數,程序提示輸入的數是偏大、偏小,還是正確。當用戶猜對了時顯示一共猜了幾次。程序運行后的輸入輸出情況如下圖所示。請在橫線處填寫適當的語句或表達式將程序補充完整。
源程序:
n=int(input('n='))
x,y=0,1
while n_________________________________________________:
??? print('第{}天吃之前的桃子個數={}'.format(n,y))
??? x=(y+1)*2
??? y=x
??? n-=1
121. 下面程序的功能是從鍵盤讀入一個正整數,將其分解為質因數之積。例如:輸入90,輸出90=2*3*3*5。程序運行后的輸入輸出情況如下圖所示。請在橫線處填寫適當的語句或表達式將程序補充完整。
源程序:
n=int(input('odd number n='))
for i in range((n+1)//2):
??? for j in range((n-1)//2-i):
??????? print(' ',end='')
??? for k in range(2*i+1):
??????? print('*',end='')
??? else:
??????? print()
for i in range((n-1)//2):
??? for j in range(i+1):
??????? print(' ',end='')
??? for k in range(n-(j +1)*2_________________):
??????? print('*',end='')
??? else:
??????? print()
124. 編寫一段程序實現下面的功能:從鍵盤讀入三角形的三邊邊長,判斷它們能否構成三角形。如果能構造成三角形,則判斷該三角形是否是等邊三角形、等腰三角形、直角三角形。
125. 編寫一段程序實現下面的功能:從鍵盤讀入兩個正整數,求其最大公約數和最小公倍數。
124
def is_triangle(a, b, c):
??? if a <= 0 or b <= 0 or c <= 0:
??????? raise Exception('三角形三邊均不能為非正數.')
??? if a + b > c and a + c > b and b + c > a:
??????? print(f'這三邊a= {a}, b={b}, c={c}能構成三角形')
??????? a = max(a, b, c)
??????? b = min(a, b, c)
??????? if (a == b and a == c):
??????????? print('等邊三角形')
??????? if (a == b or a == c or b == c):
??????????? print('等腰三角形')
??????? if (a ** 2 == b ** 2 + c ** 2):
??????????? print('直角三角形')
??? else:
??????? raise Exception('三角形任意兩邊之和需要大于第三邊')
if __name__ == '__main__':
??? try:
??????? a = int(input('Enter the first line:'))
??????? b = int(input('Enter the second line:'))
??????? c = int(input('Enter the third line:'))
??????? is_triangle(a, b, c)
??? except Exception as i:
??????? print(i)
125
# 思想:求出每個正數的質因式子,max和for循環實現
def max_div(m, n):# 得到最大公約數
#算法:除法, 函數作用較為單一
??? r = 1
??? while True:
??????? r = m % n
??????? if r == 0:
??????????? return n
??????? m = n
??????? n = r
#求最小公倍數
def min_times(m, n):
??? # 這里不要用 m = max(m, n) n = min(m, n)后面的n比較的值是更新的m和原來的n
??? _min = m * n
??? for i in range(m * n, m - 1, -1):
??????? if i % m == 0 and i % n == 0 and i < _min:
??????????? _min = i
??? return _min
#f分解質因式, 打印輸出, 并且存到列表
def fun(n):
??? x = 1
??? flag = True
??? lst = []
??? print("{}=".format(n), end='')
??? while n != 1:
??????? x += 1
??????? while n % x == 0:
??????????? lst.append(x)
??????????? n /= x
??????????? if flag:
??????????????? flag = False
??????????????? print(x, end='')
??????????? else:
??????????????? print("*{}".format(x), end='')
??? print()
??? return lst
if __name__ == '__main__':
??? m = int(input('Enter a integer number:'))
??? n = int(input('Enter the second integer number:'))
??? print('最大的公約數為', max_div(m, n))
print('最小公倍數為', min_times(m, n))
l1 = fun(m)
l2 = fun(n)
for i in l1:
??? if i not in l2:
??????? l2.append(i)
k = 1
for i in l2:
??? k *= i
print('最小公倍數為:', k)
四、測試代碼
# print(5>4>3) # print(3<5>4) # print(3<=3>=3) # print(3<=3==4>=4) # print((3<=3)==(4>=4)) # print((3!=4)==(5!=6)) # print(3!=4==5!=6) # print(3!=4<5!=6) # print((3!=4)<(5!=6)) # print(True>False) # print([1,2,3]>[2,3]) # print([1,2,3]>[2]) # print([3,2,1]>[2,3,1]) # print([3,2,1]>[2,8,9]) # print({3,2,1}>{2,3,1}) # print({9}>{3}) # print((3,2,1)>(3,1,2)) # print({1,2,3}!={3,2,1}) # print({'a':9}>{'b':3}) # print({'a':9}!={'b':3}) # print([3]!=3) # print([3]>=2) # print('abc'=={'a':2,'b':3}) # # print('abc'>={'a':2,'b':3}) # print(3 and 4) # print(3 or 4) # print(4 or 3) # print(3 and 4 or 5) # print(3 and 4 and 5) # print(3 or 4 and 5) # print(3 and 4+5<6 or 7) # print(() or [] and {}) # print(not 0 and 1 or 2) # print(not 1 or 2 and 3) # print(1 and not 2 or 3) # print(not 3) # print(0 is not 1) # print(not 2 is not 3) # print(2 if 2>3 else 3) # print(2 if not 2>3 else 3) # print(4>2+3) # print(1 if 2>3 else (4 if 5>6 else 7))# s,i=0,6 # while i>1: # s+=i # i-=2 # print(s)# s,i=0,0 # while i<4: # i=i+1 # s+=i # if i==3:break # s+=i # print(s)# s,i=0,0 # while i<4: # i=i+1 # s+=i # if i==3:continue # s+=i # print(s)# n,i=0,0 # while True: # i+=1 # if i>10:break # if i%3!=0:continue # print(i,end='')# s,i=0,1 # for i in range(3): # s+=i # i+=2 # else: # print(s)# i=2 # for i in range(4): # print(i,end='')# i=2 # for i in range(4): # print(i,end='') # i=5# for i in range(2,-2,-2): # print(i,end='') # # for i in range(4): # for j in range(i): # print(i,end='')# for i in range(3): # for j in range(3): # print(i+j,end='')# for i in range(3): # for j in range(3): # print(i+j,end='') # if i==j: # break# for i in range(4): # for j in range(3): # if i>j: # continue # print(i+j,end='')# s='ABCD' # for i in range(4): # for j in range(4-i): # print(s[i],end='') # # s='ABCD' # for i in s: # for j in i: # print(j,end='')# for i in [1,[2,3],(4,5),6]: # print(i,end=',') # # for i in ['AAA','BB','CD']: # # print(i,end='') # k=0 # for i in ['ABC'*2,[1,2,3]*2,(1,2,3)*2]: # k+=1 # else: # print(k)# k=0 # for i in 'ABC'+'EF'*2: # k+=1 # else: # print(k) # # k=0 # for i in {2,(2,3),(2,3),2,3}: # k+=1 # else: # print(k)# for i in {'a':2,'b':3,'c':4}: # print(i,end='')# k=0 # for i in [(),[],{},'']: # k+=1 # else: # print(k)# k=0 # for i in '電子科技大學': # k+=1 # else: # print(k)# t=[i*i for i in range(5)] # print(t) # # t=[i**3 for i in range(5) if i%2==0] # print(t) # # # t=[i+j for i in 'ABC' for j in '23'] # print(t)# # d={'x':2,'y':3,'z':4} # for i,j in d.items(): # print('{}={}'.format(i,j),end=';') # # d={'x':2,'y':3,'z':4} # t=[i+'='+str(j) for i,j in d.items()] # print(t) # # k=0 # t=[22,'55',33,0.66,44,'AA',True] # for i in t: # if type(i)==type(0): # k+=1 # else: # print(k) # # x=[[0],(0),(0,),{0},{0:0},0,'0',0.0,list(),tuple(),set(),dict(),''] # k=0 # for i in x: # if i: # k+=1 # else: # print(k) # # t=['123','456','789'] # s,i='',0 # for k in t: # s+=k[i]+t[i][i] # i+=1 # else: # print(s)# k=int(input('key=')) # s=[chr(i) for i in range(ord('a'),ord('z')+1)] # t=s[k:]+s[:k+1] # print(t[k]) # # m='' # k=int(input('key=')) # t='attack' # s=[chr(ord(i)+k) for i in t] # for i in s: # m+=i # print(m) # # m='' # k=int(input('key=')) # t='tomisaspy' # s=[chr(ord('a')+(ord(i)+k-ord('a'))%26) for i in t] # for i in s: # m+=i # print(m) # # m='' # s='uEstc' # t=[i+chr(ord(j)+32) for i in s if 'a'<=i<='z' for j in s if 'A'<=j<='Z'] # for i in t: # m+=i # print(m) # # t='' # s='uEstc' # for i in s: # t+=i if 'a'<=i<='z' else chr(ord(i)+32) # print(t) # # m='' # s='uEstc' # t=[chr(ord(i)-32) if 'a'<=i<='z' else chr(ord(i)+32) for i in s] # for i in t: # m+=i # print(m) # # m='' # s='uEstc' # t=[chr(ord(i)-32) if 'a'<=i<='z' else i for i in s] # for i in range(len(t)-1,-1,-1): # m+=t[i] # print(m) # # t='' # x='uestc' # s='uaebsxtyc' # for i in s: # if i not in x: # continue # t+=i # print(t) # # t='' # s='a1b2c3#d@f*' # for i in s: # if not('a'<=i<='z' or 'A'<=i<='Z'): # continue # t+=i # print(t) # # k=0 # x='e' # s='abecdef' # for i in s: # if i==x: # break # k+=1 # print(k) # print(bool({0:0})) #True# m='' # s='aaBB' # t=[i+chr(ord(j)+32) for i in s if 'a'<=i<='z' for j in s if 'A'<=j<='Z'] # for i in t: # m+=i # print(m)# 124. 編寫一段程序實現下面的功能:從鍵盤讀入三角形的三邊邊長,判斷它們能否構成三角形。如果能構造成三角形,則判斷該三角形是否是等邊三角形、等腰三角形、直角三角形。 # def is_triangle(a, b, c): # if a <= 0 or b <= 0 or c <= 0: # raise Exception('三角形三邊均不能為非正數.') # if a + b > c and a + c > b and b + c > a: # print(f'這三邊a= {a}, b={b}, c={c}能構成三角形') # a = max(a, b, c) # b = min(a, b, c) # if (a == b and a == c): # print('等邊三角形') # if (a == b or a == c or b == c): # print('等腰三角形') # if (a ** 2 == b ** 2 + c ** 2): # print('直角三角形') # else: # raise Exception('三角形任意兩邊之和需要大于第三邊') # # # if __name__ == '__main__': # try: # a = int(input('Enter the first line:')) # b = int(input('Enter the second line:')) # c = int(input('Enter the third line:')) # is_triangle(a, b, c) # except Exception as i: # print(i)# lst = [1, 2, 5, 10, 2] # print(min(lst))# m = 15 # n = 5 # for i in range(m * n, m - 1, -1): # print(i)# 125. 編寫一段程序實現下面的功能:從鍵盤讀入兩個正整數,求其最大公約數和最小公倍數。 # 思想:求出每個正數的質因式子,max和for循環實現 # def max_div(m, n):# 得到最大公約數 # r = 1 # while True: # r = m % n # if r == 0: # return n # m = n # n = r # # # def min_times(m, n): # # 這里不要用 m = max(m, n) n = min(m, n)后面的n比較的值是更新的m和原來的n # _min = m * n # for i in range(m * n, m - 1, -1): # if i % m == 0 and i % n == 0 and i < _min: # _min = i # return _min # # # if __name__ == '__main__': # m = int(input('Enter a integer number:')) # n = int(input('Enter the second integer number:')) # # print('最大的公約數為', max_div(m, n)) # print('最小公倍數為', min_times(m, n))# 求質因式 # def zhiyinshi(m): # n = int(pow(m, 0.5)) # lst = [] # for i in range(2, n + 1): # if n % i == 0: # lst.append(i) # lst.append(int(m / i)) # return lst # # # a = int(input('輸入一個正整數:')) # b = int(input('輸入一個正整數:')) # l1 = zhiyinshi(a) # l2 = zhiyinshi(b) # lst = [] # lst1 = [] # for i in l1: # for j in l2: # if i == j: # lst.append(i) # else: # lst1.append(i) # lst1.append(j) # lst1.extend(lst) # print('最大公約數為:', max(lst)) # print(a,'該正整數的質因式為:', zhiyinshi(a)) # print(b,'該正整數的質因式為:', zhiyinshi(b)) # # def fun(n): # x = 1 # flag = True # lst = [] # print("{}=".format(n), end='') # while n != 1: # x += 1 # while n % x == 0: # lst.append(x) # n /= x # if flag: # flag = False # print(x, end='') # else: # print("*{}".format(x), end='') # print() # return lst # # # # a = int(input('輸入一個正整數:')) # b = int(input('輸入一個正整數:')) # l1 = fun(a) # l2 = fun(b) # for i in l1: # if i not in l2: # l2.append(i) # m = 1 # for i in l2: # m *= i # print('最小公倍數為:', m) # # a,b,c=eval(input('a,b,c=')) # if a>b: # maX=a # miN=b # else: # maX=b # miN=a # # if c>maX: # miD=maX # maX=c # elif c<miN: # miD=miN # miN=c # else: # miD=c # print('max={},mid={},min={}'.format(maX,miD,miN))# a,b,c=eval(input('a,b,c=')) # maX=max(a,b,c) # miN=min(a,b,c) # miD=(a+b+c)- maX-miN # print('max={},mid={},min={}'.format(maX,miD,miN))# a,b,c=eval(input('a,b,c=')) # a,b,c=eval(input('a,b,c=')) # maX,miD,miN=((a,b,c) if b>c else ((a,c,b) \ # if a>c else (c,a,b))) if a>b else ((c,b,a)\ # if b<c else ((b,a,c) if a>c else (b, c, a))) # print('max={},mid={},min={}'.format(maX,miD,miN))# n=int(input('n=')) # s=0 # while n!=0: # r=n%10 # n=n//10 # s+=r # print('s={}'.format(s))# n=input('n=') # s=0 # for i in n: # s+=int(i) # else: # print('s={}'.format(s))# x=int(input('x=')) # i=2 # print('{}='.format(x),end='') # while x: # if i==x: # print(i) # break # elif x%i==0: # print('{}*'.format(i),end='') # x=x//i # else: # i+=1# n=int(input('odd number n=')) # for i in range((n+1)//2): # for j in range((n-1)//2-i): # print(' ',end='') # for k in range(2*i+1): # print('*',end='') # else: # print() # for i in range((n-1)//2): # for j in range(i+1): # print(' ',end='') # for k in range(n-2-j*2): # print('*',end='') # else: # print()# n=int(input('n=')) # for i in range(2,n+1): # s,t=0,[] # for j in range(1,i): # if i%j==0: # s+=j # t+=[j] # else: # if s==i: # print('{}={}'.format(s,'+'.join(t)))# 最大公約數和最小公倍數 a = int(input('please enter 1st num:')) b = int(input('please enter 2nd num:')) s = a * b while a % b != 0:a, b = b, (a % b) print(b, '是最大公約數') print(s//b, '是最小公倍數')總結
以上是生活随笔為你收集整理的Python--第2次平时作业的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 北京银行网银登陆流程
- 下一篇: 人类大战外星人的游戏攻略