練習71:
題目:
撰寫input()和output()函式輸入,輸出5個學生的資料記錄,
程式:
N = 5
# stu
# num : string
# name : string
# score[4]: list
student = []
for i in range(5):
student.append(['', '', []])
def input_stu(stu):
for i in range(N):
stu[i][0] = input('input student num:')
stu[i][1] = input('input student name:')
for j in range(3):
stu[i][2].append(int(input('score:')))
def output_stu(stu):
for i in range(N):
print('%-6s%-10s' % (stu[i][0], stu[i][1]))
for j in range(3):
print('%-8d' % stu[i][2][j])
if __name__ == '__main__':
input_stu(student)
print(student)
output_stu(student)
輸出結果:
input student num:1
input student name:d
score:3
score:4
score:65
input student num:2
input student name:e
score:3
score:54
score:7
input student num:3
input student name:fds
score:3
score:5
score:6
input student num:4
input student name:s
score:3
score:45
score:67
input student num:5
input student name:rs
score:3
score:4
score:6
[[', 'rs', [3, 4, 6]]]
1 d
3
4
65
2 e
3
54
7
3 fds
3
5
6
4 s
3
45
67
5 rs
3
4
6
練習72:
題目:
創建一個鏈表,
程式:
if __name__ == '__main__':
ptr = []
for i in range(5):
num = int(input('please input a number:'))
ptr.append(num)
print(ptr)
輸出結果:
please input a number:4
please input a number:1
please input a number:2
please input a number:3
please input a number:6
[4, 1, 2, 3, 6]
練習73:
題目:
反向輸出一個鏈表,
程式:
if __name__ == '__main__':
ptr = []
for i in range(5):
num = int(input('please input a number:'))
ptr.append(num)
print(ptr)
ptr.reverse()
print(ptr)
輸出結果:
please input a number:1
please input a number:2
please input a number:3
please input a number:4
please input a number:5
[1, 2, 3, 4, 5]
[5, 4, 3, 2, 1]
練習74:
題目:
串列排序及連接,
分析:排序可使用 sort() 方法,連接可以使用 + 號或 extend() 方法,
程式:
if __name__ == '__main__':
a = [1, 3, 2]
b = [3, 4, 5]
a.sort() # 對串列 a 進行排序
print(a)
# 連接串列 a 與 b
print(a + b)
# 連接串列 a 與 b
a.extend(b)
print(a)
輸出結果:
[1, 2, 3]
[1, 2, 3, 3, 4, 5]
[1, 2, 3, 3, 4, 5]
練習75:
題目:
放松一下,算一道簡單的題目,
程式:
if __name__ == '__main__':
for i in range(5):
n = 0
if i != 1: n += 1
if i == 3: n += 1
if i == 4: n += 1
if i != 4: n += 1
if n == 3: print(64 + i)
輸出結果:
67
練習76:
題目:
撰寫一個函式,輸入n為偶數時,呼叫函式求1/2+1/4+...+1/n,當輸入n為奇數時,呼叫函式1/1+1/3+...+1/n
程式:
def peven(n):
i = 0
s = 0.0
for i in range(2, n + 1, 2):
s += 1.0 / i # Python里,整數除整數,只能得出整數,所以需要使用 浮點數 1.0
return s
def podd(n):
s = 0.0
for i in range(1, n + 1, 2):
s += 1.0 / i # Python里,整數除整數,只能得出整數,所以需要使用 浮點數 1.0
return s
def dcall(fp, n):
s = fp(n)
return s
if __name__ == '__main__':
n = int(input('input a number:\n'))
if n % 2 == 0:
sum = dcall(peven, n)
else:
sum = dcall(podd, n)
print(sum)
輸出結果:
input a number:
12
1.2249999999999999
練習77:
題目:
回圈輸出串列
程式:
if __name__ == '__main__':
s = ["man", "woman", "girl", "boy", "sister"]
for i in range(len(s)):
print(s[i])
輸出結果:
man
woman
girl
boy
sister
練習78:
題目:
找到年齡最大的人,并輸出,請找出程式中有什么問題,
程式:
if __name__ == '__main__':
person = {"li": 18, "wang": 50, "zhang": 80, "sun": 22}
m = 'li'
for key in person.keys():
if key != m:
if person[m] < person[key]:
m = key
else:
continue
print('%s,%d' % (m, person[m]))
輸出結果:
zhang,80
練習79:
題目:
字串排序,
程式:
if __name__ == '__main__':
str1 = input('input string:')
str2 = input('input string:')
str3 = input('input string:')
print(str1, str2, str3)
if str1 > str2: str1, str2 = str2, str1
if str1 > str3: str1, str3 = str3, str1
if str2 > str3: str2, str3 = str3, str2
print('after being sorted:',end=" ")
print(str1, str2, str3)
輸出結果:
input string:fasd
input string:fdse
input string:gbx
fasd fdse gbx
after being sorted: fasd fdse gbx
練習80:
題目:
海灘上有一堆桃子,五只猴子來分,第一只猴子把這堆桃子平均分為五份,多了一個,這只猴子把多的一個扔入海中,拿走了一份,第二
只猴子把剩下的桃子又平均分成五份,又多了一個,它同樣把多的一個扔入海中,拿走了一份,第三、第四、第五只猴子都是這樣做的,問海灘上原
來最少有多少個桃子?
程式:
if __name__ == '__main__':
i = 0
j = 1
x = 0
while (i < 5):
x = 4 * j
for i in range(0, 5):
if (x % 4 != 0):
break
else:
i += 1
x = (x / 4) * 5 + 1
j += 1
print(x)
輸出結果:
3121.0
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/266594.html
標籤:Python
