1.多看多寫
看一下別人寫的代碼,會養(yǎng)成一個好的編程習慣。但更重要的是,要看一下比較成熟的代碼。
2.多編多敲
看了代碼,就要寫代碼,,可以跟他們相同。這是了解他們的代碼,也了解代碼的執(zhí)行過程。特別是在編譯的時候,你會發(fā)現(xiàn)你的進步和不足。在失敗中取得微小的成功,是一件很快樂的事情。
在敲代碼的時候,你會發(fā)現(xiàn),你的很多英文都會輸入錯誤。盡量多用“.”這個神奇的點,實質(zhì)就是調(diào)用。
3.簡單編程
不要一開始就是很困難、好多行的代碼。這樣你的自信心會被削弱的。自尊會被打擊的。從最基本的學起。
從一開始就慢慢體會代碼重復(fù)利用的快樂。畢竟這樣很節(jié)省代碼的輸入量,而且很能體現(xiàn)你的學習的效果。
4.多多交流
也許很簡單的問題,都是一些很簡單的屬性設(shè)置的問題,或許一些你很想不到的邊邊角角的問題,你總是會感到迷茫,但是,不要擔心,你要充分利用幫助文件和網(wǎng)絡(luò)的資源。
特別是,在學習C#的時候,很多人,很懶得安裝MSDN,確實,那些占用很多空間。但那里面有很多好東西,會教你很多的屬性的資
料和很多方法。
通過網(wǎng)絡(luò)的搜索,很會找到很多有關(guān)的話題的解決方法,很多你遇到的問題,很有可能,早就被人發(fā)現(xiàn)和被人解決。你會在尋找問題的答案中,獲得進步。發(fā)現(xiàn)問題和解決問題本身,就是一大進步。
5.發(fā)現(xiàn)新思路
編程最麻煩的就是套用老方式和老辦法。你可以充分利用現(xiàn)有的對象,進行細化和增加新的屬性。創(chuàng)新是編程最大的靈感。
6.編程模式
編程歸根結(jié)底就是對控件屬性的修改的過程,使之符合我們的需要。控件也叫做對象,你跟用戶最直接的接觸方式。修改的過程也就是函數(shù)的應(yīng)用。
通過對現(xiàn)有的控件的學習,你會發(fā)現(xiàn),這些很基本,但是覆蓋的面十分的寬廣。也許,這些控件可能無法滿足你的需要,你就會新建新的控件,來滿足新的需要。
但是,基本的控件你是必須要掌握的。
7.善于總結(jié)
在總結(jié)中,你會發(fā)現(xiàn),你有很大的進步,也存在很多的不足。所以,你就會千方百計的改進你的工作方式和學習方法,使之不斷進步。
編程本身是一項創(chuàng)造性的工作。靈感來自客戶的需要,來自市場的需要,來自用戶的便捷操作,來自您對自己的信心。
8.創(chuàng)造完美
完美是合作的結(jié)晶。通過團隊的努力奮斗,你會發(fā)現(xiàn)你的工作量
減少了,你的質(zhì)量提高了,你的效率提升了,你的能力增強了。
更重要的事,從你組織和分配中獲得的成功,會讓你獲得鼓勵,在今后的編程生活中,體驗編程的快樂,從自己做起,分享自己的快樂,從團隊合作做起。
總之,自己一直是一位初學者,有很多專業(yè)的概念,我還是很不明白,這次,我通過編程實訓,使我了解了很多,學習了很多。
時間過的真快,一晃眼的功夫,C++實習就要結(jié)束了,雖然只是短短的10天,但帶給我的卻很多。
首先,我先簡單回顧一下自己在這一段時間的經(jīng)歷。
實習是從31號開始的,經(jīng)過短短的一上午的輔導(dǎo),我就開始了自己的任務(wù),每個人必做的第一題最優(yōu)直線平差、自己選的第六題秩虧網(wǎng)平差和一個臨時加的水準路線與三角高程相對定權(quán)問題的處理。說實話,雖說自己利用空閑的時間看了一本C++的教程,對書本上的知識有所補充,對一些知識點相對理解加深了一些,但是如果真正上機編程的話,還是有點小心虛。俗話說:熟能生巧;在老師的激勵下,我對自己的本次實習充滿信心與期待。
我的實習的真正開始算是第二天吧,也就是元旦放假第一天,因為天氣比較冷所以就呆在宿舍在自己的電腦上先小試身手,不管做什么東西,都要有一個好的基礎(chǔ),MAT類和adj類算是測繪程序設(shè)計的一個非常重要的輔助工具吧,幾乎每個程序都要涉及,于是我就用了一天的時間將“MAT.h”頭文件讀了一遍,盡管求逆inverse()函數(shù)和求矩陣的秩R()函數(shù)沒有看懂,但其具體在什么地方用,和其他的一些程序算是有一定的掌握,然后就分析題目,慢慢做吧。
萬事開頭難,古人真是睿智。最優(yōu)直線的問題,題目看了好幾遍,相關(guān)的一些老師的程序也讀了幾次,感覺還是沒法下手,也許感覺這東西不靠譜,它有時候會擋住你前進的路,而你只能靠著這種感覺原地踏步,重要的是摒棄它,踏出你的第一步。算了,硬著頭皮踏出猶豫的第一步,先建個Myline的類,然后把能想到的數(shù)據(jù)成員與成員函數(shù)加進去,然后在做定義。就這樣磕磕絆絆地、邊寫邊參考老師的程序,我的程序算是有了幾個大塊了,file_in_Myline(char _),file_out_Myline(char _),Myline_adj(),為了實現(xiàn)文件能夠成功的調(diào)用,我又嘗試著加入了Creat_Myline_file(char _)函數(shù),通過屏幕上提示創(chuàng)建自己的文件,然后有直接調(diào)用file_in_Myline(char _)函數(shù)直接應(yīng)用,為了盡量減少在main()函數(shù)中的處理,最后有加入了聯(lián)系file_in_Myline(char _)和file_out_Myline(char _)的file_Myline(char _,char_)函數(shù),然后其他數(shù)據(jù)成員根據(jù)需要往類中添加。就這些東西,我做了一天,還沒有去調(diào)試,沒有建立其函數(shù)之間的傳遞,效率真夠低的,然后2號晚上開始調(diào)試,好多錯誤,看的懂的,看不懂的,我極力調(diào)試著,但我的腦子也越來越混亂,煩躁開始侵蝕我的理智。。。算了,休息會吧,再跟其他同學交流一下,宿舍小憩了一會,然后請來了編程不錯的一個同學,他因為對這方面感興趣,就提前好幾天開始編程了,他給我指導(dǎo)了一些問題,期間,我們也交流了好多關(guān)于課題任務(wù)的一些知識點、注意點,晚上,11點左右,我的最優(yōu)直線算是孕育而生了,程序的運行結(jié)果跟預(yù)期結(jié)果一樣,真的,在結(jié)果顯示在屏幕上的那一刻,我真的感覺好友成就感,今天就到這吧,有些累了,雖然程序在整體上看起來有點混亂、有的粗糙,但我可以安逸的睡了,明天再做整體修正吧,總體來說,這個開頭在有心人面前算是開的有點崎嶇但還算順利。
然后第二天修改了下我的最優(yōu)直線,再考慮了下我的第六題,那天晚上也算是曲折的做了出來,第十題老師說是很簡單,而且就光當時的講解講了好幾遍,所以有目的的去看定權(quán)的那一部分程序,沒花多長時間就把它搞定了,元旦三天時間,別人玩的時候,我做了我的程序,有好多同學的程序還沒有開始呢,哈哈,我感覺好幸福!
4號算是實習的第二天,但我的任務(wù)可以接近尾聲了,但前提是我這樣想的話。因為我知道班里的一些同學也同樣做完了自己的任務(wù),都開始涉及其他的課題,大家都極力的充實自己,我怎么可能落下呢?所以我不會就此停下,我要好好利用本次實習,讓它充實而有意義。
在接下來的幾天里,我積極的接觸其他課題,在自己的努力和老師的幫助下,效果很理想!
本次實習,我做了7個課題,第九個平面網(wǎng)最小二乘法的實現(xiàn),因為涉及的程序太多,一時半會做不完,所有以后有時間再去考慮它吧,總體來說還是達到了自己的期望,。從某種程度上來說我是超額完成自己的任務(wù),但是我知道,這個結(jié)果除了自己的努力外還有其他幾方面非常重要的原因,而這幾方面也讓我成長了不少。
實踐出真知,實習前,我的C++知識只是停留在理論水平,而且就算理論水平,也存在很多漏洞。有時,在做課題的時候,理論的漏洞冒了出來,我就只能在看著課本慢慢的再學習一遍,像做導(dǎo)線程序有涉及到數(shù)字測圖的知識,還有好多數(shù)據(jù)處理都涉及到平差原理的知識,因為當時有些東西就沒有搞懂,所以現(xiàn)在就又翻出課本,看著課本編程,也算是將舊的東西復(fù)習了一遍。同時,有的理論在實習操作過程中印象更加深刻。有趣的是,做完導(dǎo)線程序,用課本上的數(shù)據(jù)演算了一遍,結(jié)果發(fā)現(xiàn)課本上有一個數(shù)據(jù)是錯誤的(可能是吧),其他有做導(dǎo)線的同學也有相同的反應(yīng),總之,感覺挺好,不錯!
成功=勤奮+合作。我暫且將我的實習成果用成功來代替,雖然離成功差的還很遠。在實習接近尾聲的時候,有的同學跟我聊得時候,說我怎么交這次實習的成果,我說做了的課題都交啊。同學有些羨慕的恭喜我,我挺愉快的,但我也知道,我付出了,回報跟付出是成正比的,我從31號起就開始了自己的實習,我也放棄了好多休息的時間,我笨拙的讀著老師給的相關(guān)的程序,發(fā)現(xiàn)有什么不懂得,先是一個人自主的思考,實在解決不了的就和其他同學討論,有時別的同學會很清晰的給我說明一些課題的思路,但大多數(shù),其他同學也不懂、或者也在這方面存在疑問,于是,大家發(fā)表各自的看法、思路,然后就討論了起來,最后,在大家的共同努力之下,問題的答案逐漸浮出水面,大家為了慶祝一下,有時還去外面吃一頓。交流與合作在實習過程中給我很大的幫助,我得到了很多,每次看到解決一道問題后大家的愉悅,我想大家應(yīng)該與我一樣收獲很大吧。說真的,我挺喜歡這種討論的氛圍,它也讓實習過程變得趣味橫生,不再只是呆滯的盯著屏幕寫程序。
我是班長,我有義務(wù)去幫助其他同學,而實習給了我一次很好的機會,也讓我成長了好多。在這幾天的上機過程中,有同學問我問題,我積極的對待每一個問題,我會的,耐心的為他講解,每一次講解,也是我的知識鞏固的一個過程,所以我也樂此不疲,每次給別的同學講完后,我挺有成就感的,這種成就感不會讓我沾沾自喜,而會成為我不斷向上的動力;畢竟我也算是新手,有一些問題自己也是無能為力,我們或是討論,或是問老師,老師耐心講解讓我們甚是感動,有時候被老師那種責任心所折服,大家都說有這樣的老師真好!好的,我也要向老師學習,對同學負責,做好我的角色,真正做到為了同學的利益而犧牲自己的時間。
本次實習的缺陷,對我來說就是,所有程序的原始數(shù)據(jù)都來自老師給的數(shù)據(jù)或者是測量平差和數(shù)字測圖書上的例題數(shù)據(jù),跟其他同學會有所重復(fù),但所有的程序都是自己獨立完成。
這次實習總體來說,每天我的過的挺累,但累是值得的,這個值得不僅僅是課題成果上,更重要的讓我成長好多,也許這就是我在這短短的十天左右的時間里最好的回報吧。
最后,真心感激跟我一起完成課題的同學們和耐心指導(dǎo)我們的楊老師,我會在以后的路上牢記這次美好的回憶!
經(jīng)過一個學期對《C++程序設(shè)計》的學習,我學習到了基本的理論知識,了解到了C++語言程序設(shè)計的思想,這些知識都為我的課程實踐和進一步的學習打下了堅實的基礎(chǔ)。 在為期近兩周的C++課程設(shè)計中,我體會頗多,學到了很多東西。我加強了對C++程序設(shè)計這門課程的認識,并且復(fù)習了自己以前學習到的知識。這些都使得我對計算機語言的學習有了更深入的認識!總之,通過這次課程設(shè)計,我收獲頗豐,相信會為自己以后的學習和工作帶來很大的好處。像職工信息表這樣的程序設(shè)計,經(jīng)歷了平時在課堂和考試中不會出現(xiàn)的問題和考驗。而這些問題,這并不是我們平時只靠課本,就可以輕易解決的。所以,鍛煉了我們挑戰(zhàn)難題,學會用已掌握的知識去解決具體問題的能力,進一步培養(yǎng)了獨立思考問題和解決問題的能力。特別是學會了在Visual C++中如何調(diào)試程序的方法。當然,老師的指導(dǎo)和同學的幫助也是不可忽視的,他們給了我許多提示和幫助,教會了我編譯復(fù)雜程序的方法。
在老師和同學的幫助下,通過自己的努力,終于完成了這次職工信息表的簡單課程設(shè)計。我經(jīng)過這段時間的編程,對其中的艱辛,我是深有體會。從剛開始的選擇程序、理解程序到后來的調(diào)試程序以及改進程序這個過程中,我遇到了各種各樣的困難和挫折。但是我堅定信念,對自己充滿了信心,想盡一切辦法克服重重困難。
通過課程設(shè)計的訓練,我進一步學習和掌握了對程序的設(shè)計和編寫,從中體會到了面向?qū)ο蟪绦蛟O(shè)計的方便和巧妙。懂得了在進行編寫一個程序之前,要有明確的目標和整體的設(shè)計思想。另外某些具體的細節(jié)內(nèi)容也是相當?shù)闹匾?。這些寶貴的編程思想和從中摸索到的經(jīng)驗都是在編程的過程中獲得的寶貴財富。這些經(jīng)驗對我以后的編程會有很大的幫助的,我要好好利用。
雖然這次課程設(shè)計是在參考程序的基礎(chǔ)之上進行的,但是我覺得對自己是一個挑戰(zhàn)和鍛煉。我很欣慰自己能在程序中加入自己的想法和有關(guān)程序內(nèi)容,也就是對它的程序改進了一番改進,并有創(chuàng)新。但是我感覺自己的創(chuàng)新還不夠典型,總之還不是很滿意。另外由于時間的緊迫和對知識的了解不夠廣泛,造成了系統(tǒng)中還存在許多不足,功能上還不夠完善。以后我會繼續(xù)努力,大膽創(chuàng)新,爭取能編寫出透射著自己思想的程序。這次課程設(shè)計讓我充分認識到了自己的不足,認識到了動手能力的重要性。我會在以后的學習中更加努力鍛煉自己,提高自己,讓自己寫出更好更完善的程序,為以后的編程打好基礎(chǔ)!
總而言之,這次C++程序設(shè)計實踐讓我收獲很大。
通過此次C語言程序設(shè)計實踐,本人實在是獲益不淺!C語言是上個學期開的課程,所以這個學期并沒怎么看過,當要開始設(shè)計的時候,還真不知從哪下手!結(jié)果,第一次的上機,我傻坐著不知道該做什么,后來就寫了幾個預(yù)處理命令。回去以后,我想,這樣不行,這樣下去還得了!我就重新復(fù)習了一遍我們上個學期學習的內(nèi)容,發(fā)覺自已有許多都遺忘了!特別是有文件的操作,幾乎是一遍空白!溫習過后,開始做題!
一開始做題,也是有點模糊,在指導(dǎo)老師的指導(dǎo)下,我們慢慢的進入狀態(tài),我們做的是一個通訊錄,內(nèi)容包括很多。運用的函數(shù)也是非常的復(fù)雜,我們一組有七個人,我分工合作,首先我一起完成了結(jié)構(gòu)題,然后我們一人各負責一個函數(shù)程序的設(shè)計,經(jīng)過幾星期的努力,我們完成了大半個程序,但是總是有很多錯誤出現(xiàn),有好多是些小問題,這都是我們粗心大意造成的,所以設(shè)計程序一定要仔細,不容一點的馬虎。當然也有大問題,關(guān)于文件的操作,是我們最大的問題,不過,我們做好后,經(jīng)過老師的講解和改錯,我們也懂得設(shè)計和運用了。同時,也讓我知道了,合作的力量,如果是孤軍奮戰(zhàn)的話,我也不能在規(guī)定時間內(nèi)完成,當然,也多虧老師的指導(dǎo)。
這次設(shè)計,讓我重新掌握了C語言,而且還得到了用C語言解決實際問題的寶貴經(jīng)驗!
剛學習C#的時候,感覺很難,做的時候出現(xiàn)很多錯誤而且我是照著書打代碼還有錯誤,那時的感覺是迷茫的。在學習的過程中,我還是堅持下來,雖然學的不是很好,但是慢慢就理解了,現(xiàn)在也不要仿照書打代碼?,F(xiàn)在講講做項目的感想。我們項目做不好也有一個小原因,是因為我們?nèi)齻€項目同時進行,而三個項目不同,在需求分析方面沒有弄好,導(dǎo)致后面在做項目時,數(shù)據(jù)庫出現(xiàn)了很多問題,所以我覺得現(xiàn)在我們項目不要做多,而是好好做一個項目,從需求開始就要做好每一步,到后面編程才不會出現(xiàn)特別多的錯誤。
不得不說:“在老師檢查完第一次之后,我去看了一下師兄做過的項目,就覺得自己這個項目相差太遠了。我覺得我有以下幾方面做不好:1.在剛上C#時老師叫我們現(xiàn)在就要做項目但我沒有,一直等到老師快要檢查時才急急忙忙的做。2.老師上完課,自己做完作業(yè)之后,沒有好好的復(fù)習。其實我覺得三層架構(gòu)也不難,三層結(jié)構(gòu)就是主要調(diào)用了類,而類中定義了方法,歸根到底我們還是引用了類中的方法實現(xiàn)它的功能,類就類似于C語言里的函數(shù),因為在數(shù)據(jù)訪問層要用到數(shù)據(jù)操作類所以要創(chuàng)建一個數(shù)據(jù)操作類。而我們建三層架構(gòu)是為了就是倒覺得在表示層里實現(xiàn)一些功能能時要去分析,但是C#語言只學習過淺的知識,數(shù)據(jù)結(jié)構(gòu)我們也沒有學習所以分析起來就有點問題。但是所有問題都是覺得自己太懶,如果自己好好自學數(shù)據(jù)結(jié)構(gòu),學習離散數(shù)學,也許在分析功能模塊會得到提高。所以本人決定寒假做一個像樣的項目出來。
無論是學習還是做項目的過程中,耐心都要非常重要。有時出現(xiàn)錯誤,上網(wǎng)查了,自己又想了很久,又找同學討論還是不能解決時就會有不想做的念頭。因為自己曾經(jīng)在大一時就是因為連關(guān)機都不會關(guān),當時都嚇到宿舍友了,覺得還是轉(zhuǎn)專業(yè)好了。雖然轉(zhuǎn)專業(yè)沒有成功,但是自從開始學習C語言之后,就慢慢的喜歡計算機應(yīng)用技術(shù)這個專業(yè)了,覺得它很有趣,當在做項目成功的實現(xiàn)它功能時,心理就特別高興,就好想再做幾個功能。但是事實不是一下就能成功的實現(xiàn)它的功能所以耐心非常重要。
最重要的一點是我們做項目時,我們要有團隊的合作精神。只有這樣我們才能很好的完成一個好的項目,才能完成一個項目。就好比如在三層架構(gòu)中,小組成員要知道我在數(shù)據(jù)訪問層和業(yè)務(wù)邏輯層用了什么方法,這個方法的作用是什么作用,再表示層里才更好的實現(xiàn)功能。我最大的愿望就是幾個想學習的同學在一起討論問題,只有這樣才能進步更快,才能學到更多的知識。
最后想說:“一分耕耘,一分收獲?!绊椖坎皇亲龅暮芎?,但是通過項目學到了更多的知識。
通過本次教師發(fā)展在線的C語程培訓中,我受益匪淺,幾位教授的精彩演講,讓我找到了自己的不足和日后教學中的改革方向和內(nèi)容。同時,也讓我感覺到了,有今天各位教授的良好教學效果,這其中包含了他們的艱辛、背后的大量付出和無私奉獻。
我是一直從事C類語言的教學工作,對C語言的教學已有5年教齡,在這幾年的教學過程中,我們也一直在尋找好的教學方法和新的教學理念。通過本次學習,我總結(jié)要教好《C語言程序設(shè)計》這門課,最基本要把握好以下幾個方面:
(一)要重視實踐環(huán)節(jié),上機調(diào)試成績非常重要。
學習一門語言,就是要按照它的語法來編程。要編程,當然就要上機操作來驗證你程序的正確性。所以上機非常重要,通過執(zhí)行你所寫的程序,完成你所寫程序的目標,最終達到你的目的。而且通過執(zhí)行程序,你會發(fā)現(xiàn)程序中的錯誤,從而使你了解你所學知識中的不足,同時,要學會根據(jù)編譯時提示的錯誤來改正程序中發(fā)生的錯誤,以便下次不會再犯同樣的錯誤。
(二)基本語法學習雖然枯草乏味,但是它相當于高樓大廈的一磚一瓦,一定要下硬功夫讓學生掌握熟練。
C語言的語法部分。這部分內(nèi)容是學好C語言的基礎(chǔ),只有學好了這些語法,才會寫程序,看程序。所以對一個初學者來說,這部分內(nèi)容是非常重要的,所以要扎實地熟悉每一個語法,并能根據(jù)這些語法來編程。
(三)學習要抓住重點,難點部分要多講、多學、多練。
通過這次學習使得我對C語言的重點,難點,以及易出錯的地方把握的更精準了。當然,這只是針對我個人而言。在C語言學習過程,重點就是數(shù)組,指針,以及結(jié)構(gòu)體了。難點也是它們了,不過數(shù)組和結(jié)構(gòu)體還是挺簡單,所以在此主要就指針方面談?wù)勛约旱目捶ā?/p>
下面談?wù)勍ㄟ^這次學習,結(jié)合我們學校的教學情況,打算對該課程的教學進行如下幾個方面的改革:
(一)理論教學內(nèi)容的組織
C語言的重點知識包括:結(jié)構(gòu)化程序設(shè)計方法、流程圖的組織、三種程序設(shè)計結(jié)構(gòu)、三種基本數(shù)據(jù)類型和三種自定義數(shù)據(jù)類型;難點包括:結(jié)構(gòu)程序設(shè)計方法、算法的分析、流程圖的組織與設(shè)計、函數(shù)、指針等。
根據(jù)知識內(nèi)容和每年的新學時安排,我們將理論教學內(nèi)容分為授課內(nèi)容和自學內(nèi)容兩大模塊。
(1)授課內(nèi)容
C語言的授課內(nèi)容分為兩階段:①基礎(chǔ)準備階段 這部分內(nèi)容確保學生“實用、夠用”,主要包括三種基本數(shù)據(jù)類型(只要求掌握常用的int,float,char);三種常用運算符及其表達式(賦值、算術(shù)、邏輯(包括關(guān)系));三種程序設(shè)計結(jié)構(gòu)(順序、選擇、循環(huán))。②實訓項目驅(qū)動階段 這部分內(nèi)容主要是“實訓實戰(zhàn)”,主要包括數(shù)組、函數(shù)、指針和結(jié)構(gòu)體。通過第一階段的學習,學生已經(jīng)具備了一些程序設(shè)計的基礎(chǔ)知識,在這一階段將通過一個實訓項目的完成來熟悉主要內(nèi)容,同時鞏固第一階段的成果。
(2)自學內(nèi)容
課本中的內(nèi)容上課沒重點介紹或者說就是沒提到的,劃為自學內(nèi)容。但這些內(nèi)容,我們并不是在課堂要求學生回去自學:要求過高,規(guī)矩過多,這樣效果不佳。而是讓學生在實驗中發(fā)現(xiàn)問題后,帶著問題去學習,去找答案。
例:整型 我們只介紹int基本類型,當學生想計算n!時,學生測試5!=120時,他可能會去測試20!、50!,這時,存放階乘的變量Factorial再定義為int,結(jié)果就是0了,這時問題就來了,他就會去尋找正確的處理方法(long int)。
(二)實驗教學的安排與設(shè)計
教學改革方案確定后,我們對本課程實驗教學上從多方面進行了教學更新。我們考慮到學生處于了解計算機語言及編程的初級階段,有許多最基礎(chǔ)的內(nèi)容有待掌握,所以本課程的實驗教學不太適合完全以項目開發(fā)的形式進行,注重的是加強模塊化實訓。
(1)上好第一節(jié)實驗課
我們常說“上好第一節(jié)課”,那么第一節(jié)實驗節(jié)的重要性也不言而喻。這節(jié)課對培養(yǎng)學生的學習興趣、增強學生的學習信心、鍛煉學生的自主學習等多方面影響很大。
第一次實驗項目是—熟悉Turbo C的運行環(huán)境,主要是掌握一些在TC中的一些鍵盤操作方式。一般是教師給學生提供程序代碼(三個),但我們在學生不知情的情況下,給學生兩個有語法錯誤的和一個正確的程序。這樣,當學生運行正確的程序時,知道計算機可以幫我們處理問題,原來程序就是這樣寫的;當學生運行錯誤的程序,首先他會詫異(老師給的程序原來是錯的),于是要求他們自己修改,尤其是有時一個致命錯誤導(dǎo)致的10多個errors,被學生修改后,沒有了errors或所剩無幾,這時學生表現(xiàn)的很興奮、很有成就感,從而加強了本課程的學習興趣和信心。
(2)分兩階段進行
實驗內(nèi)容與理論教學內(nèi)容相互應(yīng),在基礎(chǔ)準備階段,這方面教學方法上主要是加強操練。通過各種大小程序、多重訓練和一個問題的多種解法來加強語法知識點的掌握和訓練,開闊學生編程的思路,掌握編程基礎(chǔ)。同時,在這過程中我們嚴格把關(guān),讓學生課后認真準備,每次進實驗室時,應(yīng)有寫好的完整代碼,上機調(diào)試,發(fā)現(xiàn)問題同時解決問題,要求認真完成實驗內(nèi)容,并在課后書寫實驗報告。鼓勵學生多寫程序,要加強實踐環(huán)節(jié),首先要從量上有個劃分。在實訓項目驅(qū)動階段。本階段實訓項目的設(shè)計非常重要,原則是既要使學生有切入點能夠動手又要使各章的內(nèi)容之間有聯(lián)系點。
(三)案例教學法
C語言的教學,教師一般受傳統(tǒng)應(yīng)試教育的影響,狠抓理論考試,忽略了程序設(shè)計能力的培養(yǎng),把授課重點放在程序設(shè)計語言的基本語法的講授和掌握上,所選的編程實例大多用于語法規(guī)則的驗證和說明,僅從程序設(shè)計語言的使用這個單一的角度進行教學,而使得大多數(shù)學生在學完本課程后,“吃不透、用不活”,表現(xiàn)為學生在程序調(diào)試時,對程序中出現(xiàn)的邏輯錯誤經(jīng)常不知所措,在開發(fā)較大的應(yīng)用程序時,不知道如何入手。
采用案例教學法,以程序設(shè)計為主線,以編程應(yīng)用為驅(qū)動,通過案例和問題引出教材內(nèi)容,重點講解程序設(shè)計的思想和方法,穿插講解相關(guān)的語言知識。使教學效果既有深度又有廣度,學生實際動手能力大為增強。
以上是我個人結(jié)合我院C語言程序設(shè)計的教學情況,自己總結(jié)了幾點看法和一些改革措施,拿出來和大家一起分享,請大家多提寶貴意見。通過這次學習,我將會靈活運用幾位教授的教學經(jīng)驗,根據(jù)我院的教學對象,調(diào)整一些上課方法和措施,望能更好的提高教學質(zhì)量。
學生成績管理是高等學校教務(wù)管理的重要組成部分,其內(nèi)容較多,要完成能夠?qū)崿F(xiàn)人員的信息錄入、查詢、修改、刪除、統(tǒng)計、保存、顯示等操作。系統(tǒng)具體實現(xiàn)的功能如下:
1. 添加新的聯(lián)系人
2. 刪除所有聯(lián)系人
3. 刪除某個聯(lián)系人
4. 查詢某個聯(lián)系人
5. 查詢所有聯(lián)系人
6. 將電話本導(dǎo)出到文件
7. 從文件導(dǎo)入電話本
8. 查詢并編輯某個聯(lián)系人
9. 全班同學的平均分
大概的算法分析
學生成績管理軟件的數(shù)據(jù)結(jié)構(gòu)
學生成績一般都是以每個成員為單位進行管理的,一個學生學號用一個結(jié)點來表示??紤]到添加、查詢和刪除的方便,這些以學號為單位的結(jié)點用鏈表方式組成一個主目錄。每個結(jié)點有四個域:
(1)學生代號;
(2)課程情況;
(3)成績信息管理情況;
各函數(shù)的功能和實現(xiàn)(學生成績管理的相關(guān)功能由對應(yīng)的函數(shù)來實現(xiàn))
(1) 添加新的聯(lián)系人
用代碼實現(xiàn)輸入及輸出添加新的聯(lián)系人的學號,姓名,性別,生日、語文成績,數(shù)學成績;完成添加工作。
(2) 刪除某個聯(lián)系人
首先輸入要刪除的姓名,然后要在系統(tǒng)中查看是否有此記錄,再用分支結(jié)構(gòu)實現(xiàn)刪除鏈表中此員工結(jié)點并修改學校員工鏈表及未找到這條記錄;因為可能系統(tǒng)中不存在此記錄。
(3) 刪除所有聯(lián)系人
此功能要逐條刪除聯(lián)系人,則我們采用分支、循環(huán)結(jié)構(gòu)實現(xiàn)首先遍歷是否有給記錄,輸出讀取記錄或沒有該記錄;再到文件是否讀完,若沒讀完則要循環(huán)繼續(xù)讀取,否則已刪除了所有記錄。
(4) 查詢某個聯(lián)系人
因此功能會出現(xiàn)還沒有任何記錄、未找到這條記、輸出該聯(lián)系人信息三種情況,我們則選用簡單的三分支結(jié)構(gòu);首先要請輸入要查詢聯(lián)系人的姓名,輸出有記錄或還沒有任何記錄,有記錄則遍歷所有人,最后是未找到這條記錄,輸出該聯(lián)系人信息。
(7)從電話本導(dǎo)入文件的流程圖
首先查看是否有記錄,輸出沒有任何記錄或打開“Manager.t_t”, 歷遍鏈表,將人員結(jié)點信息寫入文件Manager.t_t、關(guān)閉文件,最后成功保存到Manager.t_t。
其余的函數(shù)功能實現(xiàn)相似則不重復(fù)。
心得體會
剛放假不久,我們組的積極分子們就張羅著要開始編寫程序了,編寫這個程序我們經(jīng)歷了討論選題,編寫代碼,調(diào)試,寫設(shè)計報告等。在這期間我們查閱了很多相關(guān)的資料,曾盯著課本發(fā)呆過,我們成員之間也曾進行過激烈的口舌論戰(zhàn)。經(jīng)過這個暑假來的實踐學習,使我們對C++語言有了更進一步的認識和了解,要想學好它,則重在實踐,要通過不斷的上機操作及實例運用才能更好地深入體會它,當然通過實踐,我們也發(fā)現(xiàn)我們的好多不足之處。就比如我們對C++語言的一些標準庫函數(shù)不太了解,還有對函數(shù)調(diào)用的正確使用不夠熟悉,一些經(jīng)常出現(xiàn)的錯誤也不能很好地處理。我們編寫這個程序使用的是比較簡單的函數(shù)及結(jié)構(gòu),由于我們的水平有限,還不能很好的使用一些效率高的方式來編寫,所以也沒有突出的創(chuàng)新點。在做題的時候我們都是分工合作。分工完成結(jié)構(gòu)體、函數(shù)設(shè)計、算法分析等,這些過程中總是有很多錯誤出現(xiàn),有好多的小問題都是我們粗心大意造成的,所以設(shè)計程序一定要仔細,不容一點的馬虎。當然也有大問題,關(guān)于文件的操作,類的使用等等這些使用我們都琢磨了很久,在解決錯誤時我們有時幾乎焦頭爛額了。但是我們與隊友之間都會不斷的相互鼓勵、支持,彼此都努力維護著將作業(yè)寫完。雖然這設(shè)計有點枯燥無味,但是當最后我們大功告成時,回味起來還是美滋滋的??偟膩碚f我們真的是在設(shè)計的過程中受益匪淺。
一、課程設(shè)計目的
通過系統(tǒng)的制作,使我們熟悉系統(tǒng)開發(fā)的流程,更加熟練掌握C#語言的編程以及系統(tǒng)制作,同時可以減輕老師的工作負擔提高工作效率,與此同時也提高了考試的質(zhì)量,從而使考試更趨于公正、客觀,更加激發(fā)學生的學習興趣。
背景
在我國,雖然遠程教育已經(jīng)蓬勃地發(fā)展起來了,但是目前學校與社會上的各種考試大都采用傳統(tǒng)的考試方式。在此方式下,組織一次考試是至少要經(jīng)過5個步驟,即人工出題、考生考試、人工閱卷、成績評估和試卷分析。
顯然,隨著考試類型的不斷增加以及考試要求的不斷提高,教師的工作量將會越來越大,并且其工作將是十分繁瑣和容易出錯的,可以說傳統(tǒng)的考試方式已經(jīng)不能適應(yīng)現(xiàn)代考試的需要。隨著計算機應(yīng)用的迅猛發(fā)展,網(wǎng)絡(luò)應(yīng)用不斷擴大,人們迫切要求利用這些技術(shù)來進行在線考試,以減輕教師的工作負擔及提高工作效率,與此同時也提高考試的質(zhì)量,從而使考試更加趨于公正、客觀、更加激發(fā)學生的學習興趣。
在線考試系統(tǒng)要求對考生進行登錄驗證、考生選擇考試科目、
限制考試時間、交卷后自動評分,同時需要為管理人員提供試卷管理及考生信息的相關(guān)管理,設(shè)計系統(tǒng)的主要目的是為考試減少不必要的浪費并且使考核學生成績變得客觀和公正。
二、課程設(shè)計的要求
(一)管理員用戶
1、能對試題(只有單項選擇題)進行管理(增加,修改和刪除);
2、能對用戶留言進行管理;
3、能管理注冊用戶(刪除某用戶);
4、 能查看所有用戶的考試成績。
(二)普通注冊用戶
1、可注冊一新用戶,注冊內(nèi)容項自定,但必須有上傳照片項,所有項目須驗證。
2、可登錄進入考試頁面進行考試,登錄成功后考試頁面上要顯示用戶信息和用戶照片,同時顯示相關(guān)試題(隨機從題庫表中任意抽取20題進行考試),用戶做完試題后點提交試卷按鈕結(jié)束考試,可使用消息框看到本次考試的成績,并將相關(guān)信息存入成績表中。
3、可查看留言和留言。
三、運行環(huán)境
系統(tǒng)開發(fā)平臺:Microsoft.Visual.Studio.2005;
系統(tǒng)開發(fā)語言:C#;
數(shù)據(jù)庫軟件:Microsoft SQL Server 2005;
運行平臺:windows xp/windows7
運行環(huán)境:Microsoft.NET Framework SDK v2.0
四、系統(tǒng)設(shè)計:
本系統(tǒng)有兩個類型的用戶,管理員和普通用戶。用戶在注冊時可以設(shè)定自己的權(quán)限,注冊成功可以跳轉(zhuǎn)到登錄頁面登錄.
如果是普通用戶登錄,就可以修改自己的信息,并自己進行留言和進行試題測試,查看開始時間/考試成績和留言信息
如果是管理員登錄系統(tǒng),則可以對試題進行相關(guān)的操作,如增加試題。對注冊的新用戶進行管理,刪除用戶。對留言信息進行管理。并且可以查看學生的成績。
運行:
在線考試系統(tǒng)的基本功能,包括系統(tǒng)用戶的添加、考試試卷的添加、試題的添加和在線考試以及分數(shù)計算等。最后將所有模塊組裝成一個完整的系統(tǒng)。經(jīng)過測試,系統(tǒng)實現(xiàn)了需求分析中的要求,運行正常,操作界面簡潔。
五、心得體會
基于.net的在線考試系統(tǒng)的的設(shè)計與實現(xiàn)經(jīng)過系統(tǒng)分析、需求分析、概要設(shè)計、詳細設(shè)計等階段基本了解了該系統(tǒng)的功能要求及設(shè)計的可行性。在線考試系統(tǒng)的基本功能,包括系統(tǒng)用戶的添加、考試試卷的添加、試題的添加和在線考試以及分數(shù)計算等。最后將所有模塊組裝成一個完整的系統(tǒng)。經(jīng)過測試,系統(tǒng)實現(xiàn)了需求分析中的要求,運行正常,操作界面簡潔。
由于時間和技術(shù)水平的緣故,本系統(tǒng)還存在著許多方面的工作尚未完善。系統(tǒng)的各項功能基本都能正常運行,達到了初步設(shè)計的要求,但是還不夠完善。比如插入試題模塊功能還不完善,系統(tǒng)安全性有待提高。另外在試題的插入時,只能由管理員逐題進行錄入,還沒有實現(xiàn)試題的成套錄入。界面的美化還得進一步細化,各功能模塊也有待進行整改和完善。一個好的系統(tǒng)需要一段時間的跟蹤及長期的維護,也許后期還有可能進行功能上的增加或改進,這些都需要在系統(tǒng)設(shè)計時考慮好,才能使一個系統(tǒng)被應(yīng)用的時間更長。自己有待進一步提高,相信在以后的學習及生活中會將本設(shè)計修改的更加完善。