C#控制臺學生成績管理系統(tǒng)實訓分析報告(含源代碼)(共8頁)_第1頁
C#控制臺學生成績管理系統(tǒng)實訓分析報告(含源代碼)(共8頁)_第2頁
C#控制臺學生成績管理系統(tǒng)實訓分析報告(含源代碼)(共8頁)_第3頁
C#控制臺學生成績管理系統(tǒng)實訓分析報告(含源代碼)(共8頁)_第4頁
C#控制臺學生成績管理系統(tǒng)實訓分析報告(含源代碼)(共8頁)_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、C#語言編程實訓報告系部:電子信息系班級:計算機1201姓名:陳紫房指導教師:邱文嚴項目報告1 設計題目:學生成績管理系統(tǒng)。2 設計目的:1. 鞏固C#語言編程知識,提高面向?qū)ο缶幊棠芰?,提高分析與解決實際問題的能力。2. 掌握循環(huán)、子程序等結構的程序設計方法。3. 掌握數(shù)組、結構體等數(shù)據(jù)結構的設計方法。4. 掌握排序檢索等程序設計技術。3 項目實現(xiàn)的功能:1. 學生類的實現(xiàn);2. 輸入10個學生的學號、姓名、各門課程的成績;3. 計算學生的總成績和平均成績;4. 按總成績排序并顯示;5. 檢索功能,可以按姓名、學號進行檢索。6. 能夠插入、修改和刪除學生信息7. 能夠正常退出程序。4 設計原

2、理:1. 建立一個學生類,利用ArrayList動態(tài)數(shù)組存儲學生的學號,姓名,數(shù)學成績,英語成績,C#成績。2. 在學生類里面定義函數(shù):operate()函數(shù)當做菜單,input()函數(shù)用來輸入信息,insert()函數(shù)用來插入信息,index()函數(shù)用來檢索并返回索引值,index_show()函數(shù)用來輸出索引結果,index_remove()函數(shù)用來刪除學索引處的生信息,move()函數(shù)用來排序,move_Sum()函數(shù)用來按總成績排序,move_show()函數(shù)用來輸出排序后的信息。3. operate()函數(shù)中用swish語句選擇應用選項,用goto Return返回主菜單;input

3、()函數(shù)中用Add添加信息;insert()函數(shù)中用insert插入信息;index()函數(shù)中用IndexOf來檢索并返回索引值;index_show()函數(shù)中用for循環(huán)來輸出索引結果;index_remove()函數(shù)中用RemoveAt來刪除學索引處的生信息;move()函數(shù)中用嵌套式雙重for循環(huán)來排序;4. 用Console.Clear();來清屏。5 程序流程圖;Case1:編寫學生信息Case5:安全退出Case2:查看學生信息Case3:刪除學生信息主函數(shù)調(diào)用operate函數(shù),開始主程序Operate函數(shù)調(diào)用各個小菜單開始Case4:生成學生成績單1.添加學生信息。2.插入學生

4、信息。1.按錄入順序輸出成績單1.按學號查詢3.修改學生信息。1.按學號刪除2.按姓名查詢4.按數(shù)學成績輸出成績單2.按姓名刪除2.按總成績排序輸出成績單3.按英語成績輸出成績單goto :Return返回主菜單5.按C#成績輸出成績單結束6 使用及調(diào)試說明;1開始調(diào)試程序2輸入學生信息3.查看輸入結果4.排序5.查詢個人信息6.刪除學生信息7.插入及修改學生信息7 源程序代碼;using System;using System.Collections;usingusing System.Text;namespace Student_score_management public class

5、Student /定義了一個學生類 ArrayList ID = new ArrayList(3); /把學生的學號,姓名,英語、數(shù)學、C#成績分別放在動態(tài)數(shù)組中。 ArrayList Name = new ArrayList(3); ArrayList English_Score = new ArrayList(3); ArrayList Math_Score = new ArrayList(3); ArrayList VisualCshap_Score = new ArrayList(3); public void Menu() /主菜單 Console.WriteLine(主菜單:);

6、Console.WriteLine(1.編寫學生信息。); Console.WriteLine(2.查看學生信息。); Console.WriteLine(3.刪除學生信息。); Console.WriteLine(4.生成學生成績單。); Console.WriteLine(5.安全退出。); Console.WriteLine(_); Console.WriteLine(請選擇(以回車鍵結束)。); public void Menu1() /小菜單1 Console.WriteLine(1.添加學生信息。); Console.WriteLine(2.插入學生信息。); Console.Wr

7、iteLine(3.修改學生信息。); Console.WriteLine(_); Console.WriteLine(請選擇(以回車鍵結束)。); public void Menu2() /小菜單2 Console.WriteLine(1.按學號查詢); Console.WriteLine(2.按姓名查詢); Console.WriteLine(_); Console.WriteLine(請選擇(以回車鍵結束)。); public void Menu3() /小菜單3 Console.WriteLine(1.按學號刪除); Console.WriteLine(2.按姓名刪除); Consol

8、e.WriteLine(_); Console.WriteLine(請選擇(以回車鍵結束)。); public void Menu4() /小菜單4 Console.WriteLine(1.按錄入順序輸出成績單); Console.WriteLine(2.按總成績排序輸出成績單); Console.WriteLine(3.按英語成績輸出成績單); Console.WriteLine(4.按數(shù)學成績輸出成績單); Console.WriteLine(5.按C#成績輸出成績單); Console.WriteLine(_); Console.WriteLine(請選擇(以回車鍵結束)。); publ

9、ic void input() /添加學生信息的函數(shù) Console.Write(學號:t); ID.Add(Console.ReadLine(); Console.Write(姓名:t); Name.Add(Console.ReadLine(); Console.Write(英語成績:t); English_Score.Add(Console.ReadLine(); Console.Write(數(shù)學成績:t); Math_Score.Add(Console.ReadLine(); Console.Write(visual C#成績:t); VisualCshap_Score.Add(Cons

10、ole.ReadLine(); public void insert(int i) /插入學生信息的函數(shù),使用動態(tài)數(shù)組插入函數(shù) Console.Write(學號:t); ID.Insert(i, Console.ReadLine(); Console.Write(姓名:t); Name.Insert(i, Console.ReadLine(); Console.Write(英語成績:t); English_Score.Insert(i, Console.ReadLine(); Console.Write(數(shù)學成績:t); Math_Score.Insert(i, Console.ReadLin

11、e(); Console.Write(visual C#成績:t); VisualCshap_Score.Insert(i, Console.ReadLine(); public void index_show(int i) /輸出索引結果的函數(shù) double Sum; double Ave; Sum = (Convert.ToDouble(English_Scorei) + Convert.ToDouble(Math_Scorei) + Convert.ToDouble(VisualCshap_Scorei); Ave = (Convert.ToDouble(Sum) / 3); Conso

12、le.WriteLine(學號:t姓名:t英語:t數(shù)學:tC#分:t總分:t平均分:t); Console.WriteLine(0t1t2t3t4t5t6:#.00t, IDi, Namei, English_Scorei, Math_Scorei, VisualCshap_Scorei, Sum, Ave); public void move_show() /輸出排序后信息的函數(shù) for (int i = 0; i 0; i-) /冒泡排序法 for (int j = 0; j i; j+) if (Convert.ToDouble(tempj) 0; i-) for (int j = 0;

13、 j i; j+) if (Convert.ToDouble(temp1j) + Convert.ToDouble(temp2j) + Convert.ToDouble(temp3j) Convert.ToDouble(temp1j + 1) + Convert.ToDouble(temp2j + 1) + Convert.ToDouble(temp3j + 1) object Temp; Temp = IDj; IDj = IDj + 1; IDj + 1 = Temp; Temp = Namej; Namej = Namej + 1; Namej + 1 = Temp; Temp = En

14、glish_Scorej; English_Scorej = English_Scorej + 1; English_Scorej + 1 = Temp; Temp = Math_Scorej; Math_Scorej = Math_Scorej + 1; Math_Scorej + 1 = Temp; Temp = VisualCshap_Scorej; VisualCshap_Scorej = VisualCshap_Scorej + 1; VisualCshap_Scorej + 1 = Temp; public int index(ArrayList temp) /檢索方法,返回索引值

15、 int T; return T = temp.IndexOf(Console.ReadLine(); public void operate() /主程序方法 Student student = new Student(); /學生類初始化對象 Return: Console.Clear(); / goto Return;用于返回主菜單的語句的標簽所在 student.Menu(); byte Number; Number = Convert.ToByte(Console.ReadLine(); switch (Number) case 1: /實現(xiàn)編寫學生信息的代碼 Console.Cle

16、ar(); student.Menu1(); Number = Convert.ToByte(Console.ReadLine(); switch (Number) case 1: /實現(xiàn)添加學生信息的代碼。 Console.Clear(); Console.WriteLine(請輸入學生信息(以回車鍵結束)。); student.input(); Console.WriteLine(是否繼續(xù)輸入?是請輸入y返回主菜單請輸入n(以回車鍵結束!); char ch = char.Parse(Console.ReadLine(); while (ch = y) Console.Clear(); s

17、tudent.input(); Console.WriteLine(是否繼續(xù)輸入?是請輸入y返回主菜單請輸入n(以回車鍵結束!); ch = char.Parse(Console.ReadLine(); break; case 2: /實現(xiàn)插入學生信息的代碼。 Console.Clear(); Console.WriteLine(1.按學號插入學生信息。); Console.WriteLine(2.按索引插入學生信息。); Console.WriteLine(_); Console.WriteLine(請選擇(以回車鍵結束)。); Number = Convert.ToByte(Console

18、.ReadLine(); switch (Number) case 1: Console.WriteLine(請輸入要插入的學生的前一個人的學號); int j = student.index(student.ID); /沒有找到時返回值是-1 if (j = -1) Console.WriteLine(查無此人!無法插入信息。); else Console.Clear(); Console.WriteLine(請輸入要插入的學生信息。(以回車鍵結束。); student.insert(j + 1); Console.WriteLine(按回車鍵返回主菜單); Console.ReadLine

19、(); break; case 2: Console.Clear(); Console.WriteLine(請輸入要插入信息的位置(索引從0開始,以回車鍵結束!); int i = int.Parse(Console.ReadLine(); Console.WriteLine(請輸入要插入的學生信息。(以回車鍵結束); student.insert(i); Console.WriteLine(按回車鍵返回主菜單); Console.ReadLine(); break; break; case 3: /實現(xiàn)修改學生信息的代碼 Console.Clear(); Console.WriteLine(

20、請輸入要修改信息的學生學號); int n = index(student.ID); Console.WriteLine(請輸入要修改的學生信息); student.index_remove(n); student.insert(n); Console.WriteLine(按回車鍵返回主菜單); Console.ReadLine(); break; default: Console.WriteLine(輸入錯誤!請按回車鍵返回主菜單); Console.ReadLine(); break; goto Return; case 2: / 2.查看學生信息。 Console.Clear(); st

21、udent.Menu2(); Number = Convert.ToByte(Console.ReadLine(); switch (Number) case 1: Console.Clear(); /實現(xiàn)按學號查詢的代碼 Console.WriteLine(請輸入學生學號(以回車鍵結束)。); int j = student.index(student.ID); /沒有找到時返回值是-1 if (j = -1) Console.WriteLine(查無此人!); else student.index_show(j); Console.WriteLine(按回車鍵返回主菜單); Console

22、.ReadLine(); break; case 2: Console.Clear(); /實現(xiàn)按姓名查詢的代碼 Console.WriteLine(請輸入學生姓名以回車鍵結束)。); j = student.index(student.Name); if (j = -1) Console.WriteLine(查無此人!); else student.index_show(j); Console.WriteLine(按回車鍵返回主菜單); Console.ReadLine(); break; goto Return; case 3: /3.刪除學生信息。 Console.Clear(); Co

23、nsole.WriteLine(3.刪除學生信息。); student.Menu3(); Number = Convert.ToByte(Console.ReadLine(); switch (Number) case 1: / 實現(xiàn)按學號刪除的代碼 Console.Clear(); Console.WriteLine(請輸入學生學號(以回車鍵結束)。); int j = student.index(student.ID); /沒有找到時返回值是-1 if (j = -1) Console.WriteLine(查無此人!無法刪除!); else student.index_remove(j);

24、 Console.WriteLine(按回車鍵返回主菜單); Console.ReadLine(); break; case 2: /實現(xiàn)按姓名刪除的代碼 Console.Clear(); Console.WriteLine(請輸入學生姓名(以回車鍵結束)。); j = student.index(student.Name); /沒有找到時返回值是-1 if (j = -1) Console.WriteLine(查無此人!無法刪除!); else student.index_remove(j); Console.WriteLine(按回車鍵返回主菜單); Console.ReadLine();

25、 break; goto Return; case 4: /4.查看學生成績單,學生成績排序。 Console.Clear(); student.Menu4(); Number = Convert.ToByte(Console.ReadLine(); switch (Number) case 1: /實現(xiàn)按錄入順序輸出成績單的代碼 Console.Clear(); student.move_show(); Console.WriteLine(按回車健返回主菜單); Console.ReadLine(); break; case 2: /實現(xiàn)按總成績排序輸出成績單的代碼 Console.Clea

26、r(); student.move_Sum(student.English_Score, student.Math_Score, student.VisualCshap_Score); student.move_show(); Console.WriteLine(按回車鍵返回主菜單); Console.ReadLine(); break; case 3: /實現(xiàn)按英語成績輸出成績單的代碼 Console.Clear(); student.move(student.English_Score); student.move_show(); Console.WriteLine(按回車鍵返回主菜單); Console.ReadLine(); break; case 4: /實現(xiàn)按數(shù)學成績輸出成績單的代碼 Console.Clear();

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論