課程設(shè)計(jì)心得體會 -心得
一
課程設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識,發(fā)現(xiàn),提出,分析和解決實(shí)際問題,鍛煉實(shí)踐能力的重要環(huán)節(jié),是對學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察過程.隨著科學(xué)技術(shù)發(fā)展的日新日異,單片機(jī)已經(jīng)成為當(dāng)今計(jì)算機(jī)應(yīng)用中空前活躍的領(lǐng)域, 在生活中可以說得是無處不在,
課程設(shè)計(jì)心得體會
。因此作為二十一世紀(jì)的大學(xué)來說掌握單片機(jī)的開發(fā)技術(shù)是十分重要的。回顧起此次單片機(jī)課程設(shè)計(jì),至今我仍感慨頗多,的確,從選題到定稿,從理論到實(shí)踐,在整整兩星期的日子里,可以說得是苦多于甜,但是可以學(xué)到很多很多的的東西,同時(shí)不僅可以鞏固了以前所學(xué)過的知識,而且學(xué)到了很多在書本上所沒有學(xué)到過的知識。通過這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會服務(wù),從而提高自己的實(shí)際動手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時(shí)在設(shè)計(jì)的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,比如說三極管PNP管腳不懂怎么放置,不懂分得二極管的正負(fù)極,對單片機(jī)匯編語言掌握得不好……通過這次課程設(shè)計(jì)之后,一定把以前所學(xué)過的知識重新溫故。
這次課程設(shè)計(jì)終于順利完成了,在設(shè)計(jì)中遇到了很多編程問題,最后在梁強(qiáng)老師的辛勤指導(dǎo)下,終于游逆而解。同時(shí),在梁強(qiáng)老師的身上我學(xué)得到很多實(shí)用的知識,在次我表示感謝!同時(shí),對給過我?guī)椭乃型瑢W(xué)和各位指導(dǎo)老師再次表示忠心的感謝!
二
課程設(shè)計(jì)的心得體會
做了兩周的課程設(shè)計(jì),有很多的心得體會,有關(guān)于單片機(jī)方面的,更多的是關(guān)于人與人之間關(guān)系方面的。
我們組一共有三個(gè)人,但其他兩個(gè)人是真的神龍見首不見尾,除了在最后答辯的時(shí)候他們一起坐在了我旁邊,冠冕堂皇的指著我畫了幾遍的圖說了幾嘴,我想可能他們自己都不知道自己在說怎么,雖然有的東西他們也答出來了。我佩服他們的勇氣,羨慕他們的運(yùn)氣(我見到的很多做了10 天的人最后的成績都有不如他們的),但是鄙視他們的做法。
所幸的是,我得到了很多同學(xué)的幫助。我想沒有他們我可能都要放棄了,因?yàn)槲冶救藢纹瑱C(jī)也并不是很熟悉,學(xué)的東西好像它是它,我是我似的,理論聯(lián)系不了實(shí)際。以前的匯編語言沒學(xué)好,一開始的程序這塊兒就要令我抓狂了。后來請教我們班的一個(gè)男生,每次跟他一起到試驗(yàn)室調(diào)試程序(他們組也只有他一個(gè)人動手),看他邊做邊給我講解。最后在開發(fā)機(jī)上做出來的時(shí)候,雖然不是我自己寫的,但看他那么高興,我也有一種分享到的成就感。后來我們組就用了他寫的程序,他自己又抽空做了些拓展。
接下來就是做硬件方面的焊接工作了。沒想到這項(xiàng)看起來不需要多少技術(shù)的工作卻是非常的勞心勞力。很多次是早上起來帶瓶水帶些吃的到實(shí)訓(xùn)中心,一泡就是一天。我看到有很多人跟我一樣,不同的是他們是三三兩兩,而我大部分時(shí)間都是一個(gè)人做。在這個(gè)時(shí)候也有很多人幫助我,或是熱心的幫我?guī)э,或是在我打盹兒的時(shí)候幫我做點(diǎn)焊接。大家都鼓勵(lì)我,即使最后出不來東西,但是一定要堅(jiān)持把它做完。當(dāng)我想放棄的時(shí)候,我也這么對自己說,即使你做出來的是次品甚至不合格品,但是你一定要拿出來一件成品。
在要驗(yàn)收前,終于做了一件成品出來,不幸的是它真的是一件不合格品。幫我的那個(gè)男生做的已經(jīng)出來了,所以最后應(yīng)該還是我的焊接方面的問題。有一點(diǎn)灰心,想再重做來不及了,單是檢查線路卻也查不出來什么問題。那么就準(zhǔn)備答辯吧。我對著電路圖再看課本,發(fā)現(xiàn)以前很多覺得很難記的東西現(xiàn)在記起來容易多了,因?yàn)檎於荚谕鼈兇蚪坏馈?1的引腳及其功能,A/D轉(zhuǎn)換器的,驅(qū)動器的,所有我用到的我都一再的看書了解,同時(shí)請教同學(xué)我看書過程當(dāng)中的疑惑。在這個(gè)過程中又發(fā)現(xiàn)了以前焊接當(dāng)中出的一些問題,能改的就改,不能改的,咳,要是時(shí)間再多一些,或者我能早點(diǎn)做好,要是不只是我一個(gè)人動手……算了吧,不要想那些如果,還是準(zhǔn)備我自己的,做好我現(xiàn)在能做的吧。
還好,驗(yàn)收還算成功,得了3分,不是很高,但是我覺得對我來說已經(jīng)很好,代表了我真實(shí)的水平,我覺得我對單片機(jī)的一些知識在這個(gè)動手的過程中真的是從無到有增長的。同時(shí)我也盡量不去想別人得了多少分,沒有什么不平衡的,有些人付出的是努力,有些人付出的是風(fēng)險(xiǎn)代價(jià),其實(shí)這也沒有什么不一樣,這一點(diǎn)我早就了解。
最后,我發(fā)現(xiàn)自己對單片機(jī)竟然也有了一點(diǎn)興趣,想暑假回家以后自己去買一些東西來做,再補(bǔ)一補(bǔ)匯編語言。有什么問題請教下以前的那些老同學(xué)好了,他們好厲害,在高中勞動課就成功的做出過調(diào)頻收音機(jī),大一暑假的時(shí)候參加了學(xué)校的電子競賽培訓(xùn)接著比賽,不過后來怎么樣我就不知道了。汗?磥硪啾3致(lián)絡(luò),這次回家就好好找他們敘敘舊。
三
1前言
通過一個(gè)學(xué)期的學(xué)習(xí),我認(rèn)為要學(xué)好C語言程序這門課程,不僅要認(rèn)真閱讀課本知識,更重要的是要通過上機(jī)實(shí)踐才能增強(qiáng)和鞏固我的知識。特別是作為高職生,更要注重實(shí)踐這一環(huán)節(jié),只有這樣我們才能成為合格的計(jì)算機(jī)人材。其目錄為:
1.程序要求
2.算法分析
3.流 程 圖
4.源 程 序
5.調(diào)試結(jié)果
6.實(shí)習(xí)體會
2 程序要求
學(xué)生成績管理是高等學(xué)校教務(wù)管理的重要組成部分,其內(nèi)容較多,為了簡化計(jì)論,要求設(shè)計(jì)的管理系統(tǒng)能夠完成以下六種功能:
(1)學(xué)生注冊登記;
(2)登記學(xué)生成績;
(3)修改學(xué)生成績;
(4)打印一個(gè)班級學(xué)生的單科成績;
(5)求出每個(gè)學(xué)生一學(xué)期中各科的平均成績;
(6)打印某一課程成績處于指定分?jǐn)?shù)段內(nèi)的學(xué)生名單,
心得
《課程設(shè)計(jì)心得體會》(http://m.clearvueentertainment.com)。3 算法分析
1. 學(xué)生成績管理軟件的數(shù)據(jù)結(jié)構(gòu)
學(xué)生成績一般都是以班級為單位進(jìn)行管理的,一個(gè)班級用一個(gè)結(jié)點(diǎn)來表示。考慮到插入和刪除的方便,這些以班級為單位的結(jié)點(diǎn)用鏈表方式組成一個(gè)主目錄。每個(gè)結(jié)點(diǎn)有四個(gè)域:
(1)班級代號;
(2)課程情況;
(3)學(xué)生情況;
(4)班級順序鏈。
課程情況應(yīng)能反映出大專生所學(xué)過的全部課程。因課程是逐年增多的,所以采用鏈表結(jié)構(gòu)以便能不斷插入新的課程。該班學(xué)過的課程構(gòu)成一個(gè)課程鏈表,所以班級結(jié)點(diǎn)中的課程情況用課程鏈表表示。學(xué)生情況主要反映學(xué)生的學(xué)號,姓名,每學(xué)期學(xué)生的成績情況。因?yàn)閷W(xué)號總是順序排列的,所以選用一個(gè)結(jié)構(gòu)體數(shù)組作為反映學(xué)生情況的登陸記表。該 數(shù)組的下標(biāo)值接上班級結(jié)點(diǎn)中的班級號就是學(xué)號。例如,設(shè)每班學(xué)生數(shù)不超過40個(gè)人,班級號為9612,某學(xué)生在登記表中相應(yīng)分量的下標(biāo)值為26,則該學(xué)生的學(xué)號為961226。另外,學(xué)生成績管理要分6個(gè)學(xué)期,所以在學(xué)生登記表中,開設(shè)6個(gè)指針域,每個(gè)指針指向該生某學(xué)期某門課程學(xué)成績的結(jié)點(diǎn)。
各結(jié)點(diǎn)結(jié)構(gòu)如下所示:
(1)主目錄中班級的結(jié)點(diǎn)為:
班級號 課程鏈 班級順序鏈 學(xué)生登記表
(2)程鏈表中的結(jié)點(diǎn):
課程代號 學(xué)期號 二叉樹鏈 課程順序鏈
(3)分?jǐn)?shù)鏈表中的結(jié)點(diǎn)為:
左鏈 學(xué)號 課程代號 成績分?jǐn)?shù)順序 右鏈
為了便于登記和查詢學(xué)生的成績,選擇二叉排序來存放學(xué)生的成績。
每個(gè)班級的每門課程對應(yīng)一棵二叉樹。通過主目錄中班級結(jié)點(diǎn)的課程鏈找到指定的課程結(jié)點(diǎn),再通過課程結(jié)點(diǎn)中的二叉樹指針指向該門課程的成績二叉排序樹。另外通過主目錄中班級結(jié)點(diǎn)的學(xué)生登記表中的學(xué)期指針,指向該學(xué)生本學(xué)期某門課程的分?jǐn)?shù)結(jié)點(diǎn),并以分?jǐn)?shù)結(jié)點(diǎn)的'分安數(shù)順序鏈勾鏈該生各門課程的成績。
在登記成績和查詢分?jǐn)?shù)時(shí),都要用到課程代號。課程 代和課程名稱是一一對應(yīng)的。為了簡化程序,課程名稱和代號對照表設(shè)計(jì)為一個(gè)向量,向量的下標(biāo)值就作為課程代號,而向量中的元素就是課程名稱,這樣可以省去代號域。
1.各函數(shù)的功能和實(shí)現(xiàn)
學(xué)生成績管理的相關(guān)功能由對應(yīng)的函數(shù)來實(shí)現(xiàn)。
(1)學(xué)生注冊登記
學(xué)生入學(xué)后,首先應(yīng)是注冊登記。注冊時(shí)應(yīng)先檢查該學(xué)生所在班級是否已經(jīng)登入主目錄,未登入則若調(diào)用新結(jié)點(diǎn)后登陸入主目錄。然后將新調(diào)入的班級結(jié)點(diǎn)中對應(yīng)域賦初值,最后再讀入學(xué)生的學(xué)號和姓名并一一填入學(xué)生登記表。這樣就完成了一個(gè)班級的注冊和登記工作。
(2)登記學(xué)生成績
學(xué)生注冊后才可以登記成績,所以先要檢查這個(gè)班級是否已經(jīng)注冊,班級中是否有這個(gè)學(xué)生。在確認(rèn)有此學(xué)生后,登記該生成績。這時(shí)需完成兩個(gè)操作。一個(gè)查詢課程代號,另一個(gè)是將成績填入二叉樹。這兩個(gè)操作分別用兩個(gè)函數(shù)來實(shí)現(xiàn):
① 查詢課程代號;
② 插入二叉排序樹。
有了這兩個(gè)函數(shù),登記學(xué)生成績的工作可以很方便地完成。首先查處課程代號,調(diào)用課程結(jié)點(diǎn),填入課程代號和學(xué)期號;再在二叉樹鏈域中置初值為NULL,將課程結(jié)點(diǎn)插入為課程鏈表的頭結(jié)點(diǎn)。接著讀入每個(gè)學(xué)生的學(xué)號和成績,每個(gè)學(xué)生的每門課程都生成一分?jǐn)?shù)結(jié)點(diǎn)插入到相應(yīng)課程的二叉樹中。同時(shí),還要將該分?jǐn)?shù)結(jié)點(diǎn)鏈入該生這學(xué)期各科成績的分?jǐn)?shù)鏈表中。學(xué)生登記表中的學(xué)期指針域中存放該分?jǐn)?shù)鏈表的頭結(jié)點(diǎn)地址。
(3)修改學(xué)生成績
若登記的學(xué)生成績有錯(cuò)誤,則調(diào)用修改學(xué)生成績的函數(shù)便可以加以修改。修改時(shí)從主目錄出發(fā),查到班級,再從學(xué)生登記表中查對學(xué)號和姓名,再在與學(xué)期匹配的學(xué)期指針域中取得該生的學(xué)生鏈表的頭指針,然后搜索分?jǐn)?shù)鏈表,查到指定課程的分?jǐn)?shù)結(jié)點(diǎn),就可修改成績。
(4)打印一個(gè)班級學(xué)生的單科成績
由于學(xué)生成績是用二叉樹排序樹來存儲的,所以采用中序遍歷的方法就可以按次序打印出學(xué)姓名和成績。在打印了程序中,從主目錄開始查到班級號,就可以從課程結(jié)點(diǎn)的二叉樹鏈域中取得成績二叉排序樹的頭指針;然后調(diào)用中序遍歷了程序就可進(jìn)行打印,同時(shí)可求出平均成績和各個(gè)分?jǐn)?shù)段的人數(shù)。
(1) 求出每個(gè)學(xué)生一學(xué)期中各科的平均成績
此了程序從主目錄查對班級號開始,通過學(xué)生登記表中每個(gè)學(xué)生的學(xué)期指針取得各自的分?jǐn)?shù)鏈表的頭指針。順著分?jǐn)?shù)鏈就可求出該生本學(xué)期各科的平均成績。
(2)打印某一課程成績處于指定分?jǐn)?shù)段內(nèi)的學(xué)生名單
對二叉樹序樹進(jìn)行中序扁歷,但扁歷時(shí)應(yīng)判斷當(dāng)前成績是否處于分?jǐn)?shù)段內(nèi)而決定是否打印。
4 流 程 圖
5 程序源代碼
include<STDIO.H>
#include<CONIO.H>
#include<STDLIB.H>
#include<BIOS.H>
#include<IO.H>
#define CR 13
#define ESC 27
#define UP 72
#define DOWN 80
#include<string.h>
#include<stdio.h>
#define CRNUM 200
#define STNUM 40
#define TERMS 6
6調(diào)試結(jié)果
7實(shí)習(xí)體會
經(jīng)過一個(gè)星期的上機(jī)實(shí)踐學(xué)習(xí),使我對C語言有了更進(jìn)一步的認(rèn)識和了解,要想學(xué)好它要重在實(shí)踐,要通過不斷的上機(jī)操作才能更好地學(xué)習(xí)它,通過實(shí)踐,我也發(fā)現(xiàn)我的好多不足之處,首先是自己在指法上還不行,經(jīng)常按錯(cuò)字母,通過學(xué)習(xí)也有所改進(jìn);再有對C語言的一些標(biāo)準(zhǔn)庫函數(shù)不太了解,還有對函數(shù)調(diào)用的正確使用不夠熟悉,還有對C語言中經(jīng)常出現(xiàn)的錯(cuò)誤也不了解,通過實(shí)踐,使我在這幾個(gè)方面的認(rèn)識有所提高。
通過實(shí)踐的學(xué)習(xí),我認(rèn)到學(xué)好計(jì)算機(jī)要重視實(shí)踐操作,不僅僅是學(xué)習(xí)C語言,還是其它的語言,以及其它的計(jì)算機(jī)方面的知識都要重在實(shí)踐,所以后在學(xué)習(xí)過程中,我會更加注視實(shí)踐操作,使自己便好地學(xué)好計(jì)算機(jī)。
【課程設(shè)計(jì)心得體會 -心得】相關(guān)文章:
4.網(wǎng)頁設(shè)計(jì)課程設(shè)計(jì)報(bào)告心得體會(精選6篇)
6.課程設(shè)計(jì)總結(jié)范文 -總結(jié)
7.心得體會 -心得