freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

學(xué)生成績管理系統(tǒng)--c語言課程設(shè)計(編輯修改稿)

2025-06-18 21:38 本頁面
 

【文章內(nèi)容簡介】 10 第四章 程序調(diào)試 在設(shè)計該程序的時候我采用了結(jié)構(gòu)化程序方法編輯,并在源代碼的基礎(chǔ)上添加了中文注釋。但是在該系統(tǒng)的編寫過程中仍然有許多錯誤,主要的有 :注釋文字的排版,定義錯誤,句式的語法錯誤。 在完善程序時,我將源代碼先打印下來反復(fù)的捉摸和研究,力圖在上機運行時先改正一些低級錯誤 .如缺少 ” 。” 之類 .在仔細檢查之后,將源代碼上機調(diào)試 — 進行編譯,在編譯和連接過程中發(fā)現(xiàn)錯誤,屏幕上顯示了出錯信息,根據(jù)提示找到出錯的位置,加以改正??直到順利顯示我預(yù)期的。 首先,在本次調(diào)試過程中我碰到了在上機前根本沒有想到的錯誤:在注釋的時候,注釋文字應(yīng)寫在一起中間不能有中斷,不能再其中包含 c語言的語句。否則會引起錯誤,例如格式不正確或是多了字符等。 缺少變量定義或是 定義位置不正確; 由于該程序相對來講稍有些長,前后有些變量很難聯(lián)系起來,但是在錯誤信息的提示下一般還是很是可以找到。不過需要注意的是在定義的時候有些函數(shù)使用同樣的變量名而表示不同的作用,因而使用要很小心,定義及定義的位置要特別留意。為減少這樣的錯誤我后來還是用不同的變量名來表示,結(jié)果引起的那些錯誤解決了。 句式的語法錯誤; 大多的語法錯誤在通過書本參考下能夠修改。主要是平時看書不仔細、不太注意而產(chǎn)生的。如沒有注意具體數(shù)據(jù)使用是有一定的范圍限定;過分重視分號的重要性而在 for、if、 while語句中畫蛇添 足加分號;在使用文件的時候忘記將文件先打開,對打開的方式與使用的情況不太注意而造成不匹配;還有漏掉形參的定義是值不能傳遞等等。這些語法錯誤有信息框的提示一般是能夠排除的。 編譯、連接的成功并不意味著程序的最終成功。 邏輯上的錯誤機器不易檢查出來,這時需要對數(shù)據(jù)結(jié)果進行分析。這種錯誤的查找是最難的,需要編程序的人有相當?shù)哪托暮图毿娜グ褑栴}找出來。這也是本次程序編輯過程中碰到的最大的難題。往往運行之后得不到另人滿意的結(jié)果,此時解決的方法一則可以用 “ 分段檢查 ” 的方法,在程序的不同位置設(shè)幾個 printf函數(shù)語句,輸 出有關(guān)變量的值,逐段往下檢查,或用 debug進行調(diào)試,對檢查出的錯誤進行修改,當調(diào)試完畢將設(shè)置的 printf都刪去。若在程序中找不到問題,則再來考慮算法是否邏輯嚴謹,再進行修改。如此循環(huán)往復(fù),直到最后程序運行成功。在本次程序編輯過程中,我就是常遇到編譯能通過,能夠運行程序,但是總在輸入、刪除等操作完之后再想去看數(shù)據(jù)文件中存在的數(shù)據(jù)記錄的時候,卻一條記錄也顯示不出來,我懷疑是哪個對方對 n變量的定義或使用出錯了,于是在每個主要函數(shù)的操作過程中添加了 printf語句用來顯示 n的變化,例如在執(zhí)行某個函數(shù)前添加插入語 句顯示 n的起始值,在執(zhí)行完該個函數(shù)后再添加插入語句顯示此時 n的結(jié)果值,觀察 n的變化是否正確,如果錯誤了,也就說明該函數(shù)編寫過程有錯。諸如這樣的調(diào)試方法,不斷縮小檢查范圍,最后將錯誤找到,進行修改。所以到最后我找到了錯誤,及時改正,終于把程序完成了,一切功能顯示正常。以上是調(diào)試的全過程。 11 第五章 使用說明 首先進入界面時,根據(jù)屏幕上的提示 press any key enter menu?? 即是按任意鍵均可進入主菜單,考慮到學(xué)生成績大多由老師輸入和調(diào)用,所以這里對使用者沒有要求也就沒有添加密碼的必要。 在進入 主菜單時可以看到這樣的畫面,如圖 41所示: 41主菜單 從 0到 10共有 11個功能鍵。此時應(yīng)該根據(jù)提示 ” Enter your choice (010):” 選擇自己需要用的功能,例如:在提示后按 1再回車( Enter鍵)的話就會進入編輯。 在主菜單上的 11個功能分別是: 0 init list將表格初始化:使用 0后,系統(tǒng)會將原有的一切記錄全部刪去,所有的恢復(fù)到位使用時。一切在主菜單上完成。 1 Enter list建立學(xué)生成績表格:使用 1后,在界面上會要求你輸入學(xué)號 no,姓名 name 和成績 score 3。如果已經(jīng)輸入完畢只要在下一個 no后輸入!再按回車鍵即可,此時就會回到主菜單,如圖 42所示: 12 42輸入界面 2 Delete a record from list 從表中刪除原有紀錄:使用 2 后,會進入子界面,提示語會告訴你輸入你要刪除的信息的學(xué)生的學(xué)號 ,然后會出現(xiàn)“ list no ** student”這就表示刪除成功,如果沒有這個學(xué)生的信息則會跳過步執(zhí)行但是還是會輸出上述的句子,如圖 43所示: 43顯示刪除界面 3 print list顯示單鏈表中所有記錄:如果是在執(zhí)行完 5 以后, 那么總分和均分一欄就不會空白,而是會輸出計算后的數(shù)據(jù),如圖 44所示: 13 44打印數(shù)出界面 4 Search record from list 按照姓名查找紀錄:根據(jù)提示 ” please enter students’ name for search” 輸入學(xué)生的拼音拼寫的姓名,如圖 45所示: 45查找界面 5 pute the score計算所有學(xué)生的總分和均分:按 5后,系統(tǒng)會自動計算然后輸出結(jié)果,如圖 46所示: 14 46計算界面 6 insert record to list 插入紀錄到表中 :使用 6 時,要輸入你想插到哪一個學(xué)生前,只需輸入他的學(xué)號。然后 ,在提示語的提醒下輸入要插入學(xué)生的學(xué)號,姓名和成績。然后再進入打印界面,此時可以看到已經(jīng)將 09 插入到 02 前。如圖 47所示: 47插入后界面 7 copy the file to new file復(fù)制文件:執(zhí)行完 7后,會根據(jù)使用者輸入的地址和命名生成文本文檔存儲。 8 sort to make new file將所有學(xué)生成績排序:在完成后,會出現(xiàn) ” sort success!” 如果想看結(jié)果的話,可以在執(zhí)行完這一步后在執(zhí)行 3,這樣就可以看 到排序后的結(jié)果。 15 9 total on nomber分類合計,如圖 49所示: 49分類合計界面 10 Quit退出模塊,在主菜單上實行。如圖 410所示: 16 410退出界面 17 第六章 工作總結(jié) 在這次的編程過程中,我不僅在 C 語言的學(xué)習(xí)上有了很大的提高而且也培養(yǎng)了我的毅力、耐心、決心和學(xué)習(xí)能力。短短的兩周,我自己都不敢相信可以弄好一個對我而言一個大而功能相對而言還可以的程序。 但是不得不說在這個程序中仍然有許多的缺陷,諸如 :計算均分時只能計算三門的總均分;無法 將文件以文檔或是表格形式存儲;排序、刪除等必須以一種形式先查找學(xué)生信息然后再實行操作并不多樣化??傊?,在這個過程中我還面對了程序無法執(zhí)行,改錯時怎么也找不到錯誤在哪里的困境;但我還是在老師和同學(xué)們的幫助下完成了這個程序。 可以說我的心情是相當?shù)募?,相信有了這樣的經(jīng)歷后我能夠更加嫻熟的面對各種情況。 注:課程設(shè)計以來的感想、心得、經(jīng)驗、收獲、有待改進的方面。不超過一頁。 18 參考文獻 (參考書或論文或文章) [1] 黃明等 .21 世紀進階輔導(dǎo) C 語言程序設(shè)計 .大連理工大學(xué)出版社 ,2021: 45— 208 [2] 馬靖善等 .C 語言程序設(shè)計 .清華大學(xué) 出版社, 2021: 23— 145 19 附錄 源代碼 include include include include include include include define N 3 typedef struct z1 { char no[11]。 char name[20]。 int score[N]。 float sum。 float average。 int order。 struct z1 *next。 }STUDENT。 STUDENT *init()。 STUDENT *create()。 STUDENT *delete(STUDENT *h)。 void print(STUDENT *h)。 void search(STUDENT *h)。 void save(STUDENT *h)。 STUDENT *load()。 void puter(STUDENT *h)。 STUDENT *insert(STUDENT *h)。 void append()。 void copy()。 STUDENT *sort(STUDENT *h)。 void total(STUDENT *h)。 int menu_select()。 main() { int i。 STUDENT *head。 head=init()。 20 clrscr()。 for(。) { switch(menu_select()) case 0:head=init()。break。 case 1:head=create()。break。 case 2:head=delete(head)。break。 case 3:print(head)。break。 case 4:search(head)。break。 case 5:puter(head)。break。 case 6:head=insert(head)。 break。 case 7:copy()。break。 case 8:head=sort(head)。break。 case 9:total(head)。break。 case 10:exit(0)。 } } } menu_select() { char *menu[]={***************MENU***************, 0. init list, 1. Enter list, 2. Delete a record from list, 3. print list ,
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1