




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、實(shí)訓(xùn)案例指導(dǎo)書C語言程序設(shè)計(jì)所在系別: 計(jì)算機(jī)技術(shù)系 所屬專業(yè): 計(jì)算機(jī)網(wǎng)絡(luò)技術(shù) 指導(dǎo)教師: 宋鐵橋 專業(yè)負(fù)責(zé)人: 孫志成 指導(dǎo)書填寫要求1. 課程設(shè)計(jì)指導(dǎo)書由指導(dǎo)教師根據(jù)課題的具體情況進(jìn)行設(shè)計(jì)填寫,經(jīng)學(xué)生所在專業(yè)的負(fù)責(zé)人審查、系領(lǐng)導(dǎo)簽字后生效。此指導(dǎo)書應(yīng)在課程設(shè)計(jì)開始前一周內(nèi)填好并發(fā)給學(xué)生;2. 指導(dǎo)書填寫的內(nèi)容,必須和學(xué)生課程設(shè)計(jì)完成的情況相一致。若有變更,應(yīng)當(dāng)經(jīng)過所在專業(yè)教研室及系主管領(lǐng)導(dǎo)審批后方可重新填寫;3. 本指導(dǎo)書內(nèi)有關(guān)“系”、“專業(yè)”等名稱的填寫,應(yīng)寫中文全稱,學(xué)生的“學(xué)號(hào)”要寫全,不能只寫最后2位或1位數(shù)字;4. 有關(guān)年月日等日期的填寫,一律用阿拉伯?dāng)?shù)字書寫。如“2015年3
2、月2日”或“2015-03-02”。目 錄一實(shí)訓(xùn)的目的與要求4(一)實(shí)訓(xùn)目的4(二)實(shí)訓(xùn)要求5(三)成績?cè)u(píng)定5二實(shí)訓(xùn)的前期準(zhǔn)備(設(shè)備、用具與軟件環(huán)境)5三實(shí)訓(xùn)設(shè)計(jì)步驟6(一)項(xiàng)目內(nèi)容設(shè)計(jì)6(二)項(xiàng)目解決方案(參考程序代碼清單)6(三)項(xiàng)目主要技術(shù)指標(biāo)10四課程實(shí)訓(xùn)進(jìn)度安排11五主要參考文獻(xiàn)及資源11一實(shí)訓(xùn)的目的與要求(一)實(shí)訓(xùn)目的課程實(shí)訓(xùn)環(huán)節(jié)是高職高專院校非常重要的一個(gè)教學(xué)環(huán)節(jié),是學(xué)完一門課后應(yīng)用本課知識(shí)及以前的知識(shí)積累而進(jìn)行的綜合性、開放性的訓(xùn)練。通過課程實(shí)訓(xùn),不僅能夠使學(xué)生得到系統(tǒng)的技能訓(xùn)練,鞏固和加強(qiáng)所學(xué)到的專業(yè)理論知識(shí),而且能夠培養(yǎng)學(xué)生工程意識(shí)、創(chuàng)新能力及團(tuán)隊(duì)精神等綜合素質(zhì),培養(yǎng)學(xué)生的
3、設(shè)計(jì)能力和解決實(shí)際問題的能力。正如一句行話所說“C語言入門容易得道難”,對(duì)于多數(shù)學(xué)生來說,在學(xué)習(xí)了C語言之后,除了應(yīng)付全國計(jì)算機(jī)等級(jí)考試之外,不知還有其他用途,對(duì)豐富的C函數(shù)所知甚少,因而對(duì)C語言興趣不大。因此,本課程設(shè)計(jì)環(huán)節(jié)從算法、數(shù)據(jù)結(jié)構(gòu)、C語言豐富的函數(shù)以及程序設(shè)計(jì)等方面進(jìn)行了精心考慮和組織,追求典型性、完整性、實(shí)用性和趣味性,希望不僅能夠提高學(xué)生學(xué)習(xí)C語言的興趣,更為開發(fā)程序打下堅(jiān)實(shí)的基礎(chǔ)。1. 加深對(duì)講授內(nèi)容的理解。C語言程序設(shè)計(jì)課程中的一些語法規(guī)則和階段性知識(shí),只靠課堂講授既枯燥無味又難以記憶,但它們都很重要,要想熟練掌握,必須經(jīng)過大量實(shí)踐加深對(duì)它們的理解與把握。2. 通過設(shè)計(jì),熟
4、練上機(jī)調(diào)試程序。學(xué)生上機(jī)時(shí)不應(yīng)依靠別人幫助調(diào)試程序和排錯(cuò),應(yīng)該做到善于發(fā)現(xiàn)程序中的錯(cuò)誤,并且能很快的排除這些錯(cuò)誤,使程序能正確運(yùn)行。經(jīng)驗(yàn)豐富的人,在編譯連接過程中出現(xiàn)“錯(cuò)誤信息”時(shí),一般能很快判斷出錯(cuò)誤所在,并改正。而缺乏經(jīng)驗(yàn)的人即使在明確的“錯(cuò)誤信息”下也往往找不出錯(cuò)誤。要真正掌握計(jì)算機(jī)應(yīng)用技術(shù),不僅要了解和熟悉有關(guān)的理論和方法,還要自己動(dòng)手實(shí)現(xiàn),尤其在程序設(shè)計(jì)課程中后者更為重要。因此要求程序員不僅懂理論、會(huì)編程,同時(shí)能快速上機(jī)調(diào)試程序。3. C語言綜合程序設(shè)計(jì)能力的提高。學(xué)生對(duì)于C語言的學(xué)習(xí)不能僅停留在讀懂簡單程序和編寫短小的階段性程序階段,應(yīng)善于將所學(xué)的知識(shí)貫穿起來,綜合運(yùn)用C語言的全部
5、知識(shí),達(dá)到能夠縱觀全局,分析、設(shè)計(jì)具有一定規(guī)模的題目的要求,做到對(duì)知識(shí)的全面掌握和運(yùn)用。(二)實(shí)訓(xùn)要求1.總體要求利用學(xué)到的編程知識(shí)和編程技巧,通過布置具有一定難度的程序設(shè)計(jì)題目,幫助學(xué)生熟悉程序編寫,及時(shí)查究錯(cuò)誤,獨(dú)立完成。(1) 對(duì)系統(tǒng)進(jìn)行正確的功能模塊分析、控制模塊分析。(2) 系統(tǒng)設(shè)計(jì)要實(shí)用。(3) 編程簡練、可用,功能全面,具有較好的可讀性。(4) 說明書、流程圖要清楚。 2.學(xué)生分組要求4-6人一組,選出一名項(xiàng)目經(jīng)理。每一組交一份實(shí)訓(xùn)報(bào)告,一份作品。3.實(shí)訓(xùn)結(jié)果要求(1)項(xiàng)目代碼要求:能夠正常運(yùn)行,有必要的注釋和文檔。(2)完成實(shí)訓(xùn)任務(wù)后,要認(rèn)真撰寫實(shí)訓(xùn)報(bào)告。(三)成績?cè)u(píng)定1.程序
6、能正確運(yùn)行:主菜單能正常調(diào)用各功能函數(shù)(50%);2.程序數(shù)據(jù)設(shè)計(jì)合理,功能函數(shù)設(shè)計(jì)靈活,能順利完成項(xiàng)目的基本功能(20%);3. 根據(jù)各個(gè)項(xiàng)目實(shí)際要求,各函數(shù)模塊有一定的糾錯(cuò)功能(10%);4.各小組分工配合默契,編寫設(shè)計(jì)報(bào)告格式完整,功能介紹全面,設(shè)計(jì)實(shí)現(xiàn)具體,演示答辯能準(zhǔn)確講解各功能函數(shù)的任務(wù)與實(shí)現(xiàn)(20%);二實(shí)訓(xùn)的前期準(zhǔn)備(設(shè)備、用具與軟件環(huán)境)為了充分利用上機(jī)時(shí)間,在進(jìn)行課程設(shè)計(jì)前應(yīng)事先做好各種準(zhǔn)備工作,以提高實(shí)訓(xùn)效率。準(zhǔn)備工作至少包括以下幾點(diǎn):1.設(shè)備:開通局域網(wǎng)與實(shí)訓(xùn)用機(jī)2.軟件環(huán)境:VC+6.03.人員要求: (1)了解所用VC+6.0技術(shù)的開發(fā)環(huán)境設(shè)置和使用方法;(2)復(fù)習(xí)
7、與實(shí)訓(xùn)題目有關(guān)的知識(shí),熟悉實(shí)現(xiàn)方法;(3)準(zhǔn)備好上機(jī)所需的素材;(4)對(duì)實(shí)訓(xùn)時(shí)可能出現(xiàn)的問題應(yīng)事先作出估計(jì),有疑問的地方應(yīng)標(biāo)上記號(hào),以便在實(shí)訓(xùn)時(shí)給予特別注意;(5)準(zhǔn)備好實(shí)訓(xùn)時(shí)使用的參考書。三實(shí)訓(xùn)設(shè)計(jì)步驟(一)項(xiàng)目內(nèi)容設(shè)計(jì) 1用C語言實(shí)現(xiàn)系統(tǒng) 利用函數(shù)調(diào)用實(shí)現(xiàn)小學(xué)生自主學(xué)習(xí)系統(tǒng)的設(shè)計(jì);系統(tǒng)的各個(gè)功能模塊要求用函數(shù)的形式實(shí)現(xiàn);提供一個(gè)界面來調(diào)用各個(gè)功能;調(diào)用界面和各個(gè)功能的操作界面應(yīng)盡可能清晰美觀。2.小學(xué)生自主學(xué)習(xí)系統(tǒng)功能實(shí)現(xiàn):試設(shè)計(jì)小學(xué)生自主學(xué)習(xí)系統(tǒng),系統(tǒng)以菜單方式工作,采用自定義函數(shù)設(shè)計(jì)各功能模塊被主菜單調(diào)用,使之能提供以下基本功能: (1)加法功能 (2)減法功能(3)乘法功能(4)除法
8、功能(5)退出功能各功能模塊對(duì)可能出現(xiàn)的異常情況能進(jìn)行簡單的識(shí)別和糾錯(cuò)。(二)項(xiàng)目解決方案(參考程序代碼清單)#include <stdio.h>#include <stdio.h>int getChoice();void showMenu();void doExercise(int);int test(int);/*功能:用戶選擇功能 返回:用戶的功能選擇1、加法2、減法3、乘法4、除法0、退出*/int getChoice()int choice;scanf("%d",&choice);return choice;/*功能:顯示功能的菜單
9、*/void showMenu()printf("=n");printf("n歡迎使用小學(xué)生四則運(yùn)算練習(xí)軟件n");printf("t1、加法練習(xí)t2、減法練習(xí)n");printf("t3、乘法練習(xí)t4、除法練習(xí)n");printf("t5、綜合練習(xí)t0、退出系統(tǒng)n");printf("請(qǐng)輸入你的選擇(0-5):n");printf("n=n");/*功能:計(jì)分器*/void doExercise(int n)int score=0;/練習(xí)得分,初始化為0
10、int i=0;/練習(xí)題數(shù)的計(jì)數(shù)器for(i=1;i<=10;i+)score=score+test(n);/間接遞歸調(diào)用test(n)printf("本次練習(xí)十道題,你做對(duì)了%d道n",score);/*功能:進(jìn)行一道題的測(cè)試過程*/int test(int n)int ranswer=0;/正確答案int uanswer=0;/用戶輸入的答案int t=0;/臨時(shí)變量char operation;/運(yùn)算類別int num1=0;/操作數(shù)1int num2=0;/操作數(shù)2int a=0;srand(time(NULL);/初始化隨機(jī)數(shù)種子num1=rand()%10
11、;/取0-9之間的隨機(jī)數(shù)num2=rand()%10;/進(jìn)入程序功能,如果選擇5就隨機(jī)產(chǎn)生1-4所代表的每一種運(yùn)算方式if(n=5)n=rand()%4+1;switch(n)case 1:operation='+'break;case 2:operation='-'break;case 3:operation='*'break;case 4:operation='/'break;/加入一條防止"不夠減"的語句,當(dāng)選擇減法且num1小于num2時(shí)不夠減/不夠減的時(shí)候,用臨時(shí)變量交換兩個(gè)操作數(shù)if(operati
12、on='-') && (num1<num2)t=num1;num1=num2;num2=t;/防止"除數(shù)為0"的程序漏洞/當(dāng)num2被隨機(jī)取值到0時(shí),就將num2強(qiáng)制置為1/做除法時(shí),將num1的值強(qiáng)制賦值給num1*num2,防止不能整除if(operation='/')if(num2=0)num2=1;num1=num1*num2;/防止num1不能被num2整除的語句/輸出測(cè)試題本身、提示用戶輸入loop1:printf("%d%c%d= ",num1,operation,num2);scanf
13、("%d",&uanswer);/程序計(jì)算正確結(jié)果switch(operation)case '+':ranswer=num1+num2;break;case '-':ranswer=num1-num2;break;case '*':ranswer=num1*num2;break;case '/':ranswer=num1/num2;break;/評(píng)判,做對(duì)返回1,做錯(cuò)返回0if(uanswer=ranswer)printf("做對(duì)了,好棒哦!n");return 1;else pr
14、intf("做錯(cuò)了,要加油哦!n");a+;if(a=2)return 0;elsegoto loop1;/return 0;/主函數(shù)int main(void)int choice=0;/接收用戶的選擇/循環(huán)開始功能,本次用dowhile循環(huán)doshowMenu();/顯示菜單choice=getChoice();/控制choice的范圍if(choice<0 | choice>5)choice=1;/強(qiáng)制做加法if(choice=0)break;/用戶選擇0,退出循環(huán)(退出系統(tǒng))doExercise(choice);/做什么練習(xí),并啟動(dòng)評(píng)分while(cho
15、ice!=0);printf("歡迎使用本軟件,再見!n");return 0;(三)項(xiàng)目主要技術(shù)指標(biāo)1.代碼應(yīng)盡可能模塊化無論是面向過程還是面向?qū)ο螅a重用是基本原則之一。代碼編寫可以將具有相近功能的語句或完成一個(gè)個(gè)具體任務(wù)的語句組織在一起,進(jìn)行模塊化編程。這在以后開發(fā)大型程序的時(shí)候,工作的效率就會(huì)明顯提高,程序兼容性強(qiáng)。2.良好的編寫風(fēng)格一個(gè)程序,不可能是絕對(duì)完美,以后永遠(yuǎn)不再修改。既然要修改,就必然要讀懂原來的程序代碼。而良好的編程風(fēng)格,可以使人更方便和迅速理解程序的結(jié)構(gòu),從而可以最大限度地提高修改的效率。(1)統(tǒng)一有意義的命名規(guī)范。一個(gè)變量名sum明顯比a更容易理
16、解其真正的邏輯含義和數(shù)據(jù)類型。讓它有意義一些,將來理解也比較方便。(2)程序采用縮進(jìn)格式書寫。這個(gè)書寫習(xí)慣使程序代碼之間的層次關(guān)系更加明顯,對(duì)于程序的邏輯理解有很大幫助。 (3)代碼位置有條理性。把相關(guān)功能的代碼集中起來,放在一起,這樣以后閱讀代碼的時(shí)候,可以盡量避免在不同文件之間頻繁切換。由于要考慮到以后的理解,所以函數(shù)內(nèi)部的邏輯不需要寫得很復(fù)雜,嵌套以三層為宜,代碼長度以一屏幕左右為宜,太長的代碼不利于理解和調(diào)試。當(dāng)然好的編程風(fēng)格不止這些,這也需要在以后的學(xué)習(xí)過程中慢慢體會(huì)。3.注重程序測(cè)試,注意異常處理程序的運(yùn)行在正常情況會(huì)得出正確的結(jié)果,而我們還必須關(guān)注程序在異常情況下也可以正常運(yùn)行,至少可以正常終止。我們稱之為程序的糾錯(cuò),多用不同情況去測(cè)試程序,可以發(fā)現(xiàn)更多的隱藏的Bug,從而提高程序的運(yùn)行效率。四課程實(shí)訓(xùn)進(jìn)度安排課程實(shí)訓(xùn)的題目應(yīng)提前一周布置,以便學(xué)生作好充分準(zhǔn)備。一周的課程設(shè)計(jì)主要分成以下幾個(gè)階段:1. 系統(tǒng)分析與設(shè)計(jì)階段。在前期資料查閱的基礎(chǔ)上,學(xué)生對(duì)所選課題進(jìn)行功能分析與設(shè)計(jì)(第一天)。2. 程序編制與調(diào)試階段。學(xué)生在老師的指導(dǎo)下獨(dú)立完成程序的編制與調(diào)試,老師應(yīng)實(shí)時(shí)考察學(xué)生的實(shí)際編程與調(diào)試能力(第二天至第四天)。 3. 總結(jié)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 電子支票轉(zhuǎn)賬系統(tǒng)企業(yè)制定與實(shí)施新質(zhì)生產(chǎn)力項(xiàng)目商業(yè)計(jì)劃書
- 生物醫(yī)用藥物傳輸系統(tǒng)行業(yè)跨境出海項(xiàng)目商業(yè)計(jì)劃書
- 高效糖漿冷卻裝置行業(yè)深度調(diào)研及發(fā)展項(xiàng)目商業(yè)計(jì)劃書
- 高精度粉末包裝機(jī)械行業(yè)跨境出海項(xiàng)目商業(yè)計(jì)劃書
- 鄉(xiāng)村滑雪訓(xùn)練營企業(yè)制定與實(shí)施新質(zhì)生產(chǎn)力項(xiàng)目商業(yè)計(jì)劃書
- 金融科技倫理與隱私保護(hù)研究行業(yè)深度調(diào)研及發(fā)展項(xiàng)目商業(yè)計(jì)劃書
- P2P網(wǎng)貸AI應(yīng)用行業(yè)跨境出海項(xiàng)目商業(yè)計(jì)劃書
- 耐候性氟硅外墻涂料行業(yè)跨境出海項(xiàng)目商業(yè)計(jì)劃書
- 冰雪運(yùn)動(dòng)培訓(xùn)基地行業(yè)跨境出海項(xiàng)目商業(yè)計(jì)劃書
- 高端定制禮服品牌行業(yè)跨境出海項(xiàng)目商業(yè)計(jì)劃書
- 鋼結(jié)構(gòu)機(jī)電工程施工方案
- 基于計(jì)算思維培養(yǎng)的小學(xué)人工智能啟蒙教育課程設(shè)計(jì)與實(shí)施
- 機(jī)電安裝工程總承包合同
- 湘教版四年級(jí)下冊(cè)科學(xué)各單元知識(shí)點(diǎn)復(fù)習(xí)
- 課件-2025年春季學(xué)期 形勢(shì)與政策 第一講-加快建設(shè)社會(huì)主義文化強(qiáng)國9
- 2025年度江西撫州高新區(qū)區(qū)屬國企業(yè)公開招聘紀(jì)檢監(jiān)察工作人員10人高頻重點(diǎn)模擬試卷提升(共500題附帶答案詳解)
- 汽車租賃掛靠協(xié)議書
- 北京市歷年中考語文現(xiàn)代文閱讀之非連續(xù)性文本閱讀8篇(截至2024年)
- 公司內(nèi)部文件管理規(guī)定及辦法
- 公開征集招標(biāo)代理機(jī)構(gòu)投標(biāo)方案(技術(shù)方案)
- 信息系統(tǒng)安全等級(jí)保護(hù)等級(jí)測(cè)評(píng)報(bào)告模板【等保2.0】
評(píng)論
0/150
提交評(píng)論