我有任務
(求最高分) 撰寫一個程式,提示用戶輸入學生人數和每個學生的分數,并顯示最高分。假設輸入存盤在名為 score.txt 的檔案中,程式從該檔案中獲取輸入。
但是我們還沒有學會如何將資料存盤在 .txt 檔案中,所以老師告訴我們把它當作輸入。
到目前為止我所擁有的:
grade = 0
students = eval(input("enter number of students: "))
for i in range(1, students 1):
grade = eval(input("enter student score: "))
我了解如何輸入學生人數并將其存盤到變數(學生)中。
而且我知道如何撰寫一個回圈來反復詢問等于學生人數的輸入(學生分數)
但我不知道如何單獨存盤每個學生的分數,除了在 for 回圈(等級)下做一次。
uj5u.com熱心網友回復:
students = int(input("enter number of students: "))
highest_grade = 0
for i in range(1, students 1):
grade = int(input("enter student score: "))
if grade > highest_grade:
highest_grade = grade
print("Highest score is {}".format(highest_grade))
我只是運行和測驗。它的作業正常
uj5u.com熱心網友回復:
那么你也可以嘗試使用字典。存盤學生姓名以及他們的分數。然后檢查最高分。你編碼:
students=int(input ("Enter no of students: "))
scores={}
hg=0
for i in range(students):
name=input("Enter name of student= ")
score=int(input ("Enter score: "))
scores[name]=score
if score>hg:
hg=score
print("Highest score is ",hg)
說明:我們將從用戶那里獲取名稱和分數的輸入并將其存盤在字典中。默認情況下,我們將 hg(highest score) 保存為 0。然后在獲取用戶輸入的 score 時,我們將檢查它是否大于 hg,如果是,則將 hg 更新為新的分數并繼續檢查直到回圈終止和最后列印出來
你在沒有字典和串列的情況下做這些事情,我只是建議字典,因為它可以以更系統的方式保存資料,同時顯示名稱和分數
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/319235.html
上一篇:c中的時間復雜度(嵌套回圈)
下一篇:將主要游戲回圈轉化為功能
