有一題 python的基本題目
假設有n個學生,每個學生有3門課(國文、英文、數學)的成績。撰寫一個程式,可從鍵盤輸入以上資料(包括學生學號,姓名,國文成績、英文成績、數學成績,當學號為 -111,即作出計算出每一課的平均成績與每一個人的平均成績。
請問各位30公分的大哥能幫幫小弟解決這道題目嗎感謝!!!!
功課要自己寫才會進步......
studentId = []
name = []
chineseGrade = []
englishGrade = []
mathGrade = []
while True:
inp = input('Student ID ? ')
if inp == '-111':
break
else:
studentId.append(inp)
name.append(input('Name ? '))
chineseGrade.append(int(input('Chinese grade ? ')))
englishGrade.append(int(input('English grade ? ')))
mathGrade.append(int(input('Math grade ? ')))
print()
print()
print('StudentId Name Average')
for i in range(len(studentId)):
avg = (chineseGrade[i] + englishGrade[i] + mathGrade[i]) / 3
print('%9s %-8s %7.1f' % (studentId[i], name[i], avg))
print()
print('Chinese Avg : %5.1f' % (sum(chineseGrade) / len(chineseGrade)))
print('English Avg : %5.1f' % (sum(englishGrade) / len(englishGrade)))
print('Math Avg : %5.1f' % (sum(mathGrade) / len(mathGrade)))
(1)利用記事本建立如下圖左側的文字檔,檔案名稱取名為「score.txt」。該文字檔
內容依序是學生的姓名、中文、英文與數學成績。
同時建立一個結構(StuScores) 裡面必須包含姓名(包含 10 個字元的字元陣列
cName),儲存中文(iChi)、英文(iEng)與數學(iMat)的整數變數(int),以及儲存總分
(iTotal)(int 型別)跟平均分數 (fAve) 的變數(float)。
寫一個程式,讀入 score.txt 的內容,並將學生的資料儲存到結構陣列(stu)中,
同時計算每位學生的總分與平均分,結果也儲存到結構陣列中,計算結束後,將
結果輸出到 result.txt 的檔案內(如下右側所顯示)。
(2) 假設班上有 5 學生,學生的編號從 1 到 5,每一位學生必須儲存的資料有編號、
國文與數學的成績、總成績等四項資料,這些資料必須儲存在同一個二維陣列內。
設計一個程式輸入學生的國文與數學成績(假設成績的輸入是依照編號的順序),
然後計算每一位學生的總成績,最後根據學生的總成績,由高至低重新調整學生
儲存在陣列中順序,最後將排序的結果輸出,也就是學生的編號、國文、數學與
總成績。
請問各位30公分的大哥能幫幫小弟解決這道題目嗎感謝!!!!