在科技高速發(fā)展的今天,計算機互聯(lián)網(wǎng)在人們之中的作用越來越突出。而c語言作為一種計算機的語言,我們學習它,有助于我們更好的了解計算機,與計算機進行交流,因此,c語言的學習對我們尤其重要。
在這個星期里,我們專業(yè)的學生在專業(yè)老師的帶領下進行了c語言程序?qū)嵺`學習。在這之前,我們已經(jīng)對c語言這門課程學習了一個學期,對其有了一定的了解,但是也僅僅是停留在了解的范圍,對里面的好多東西還是很陌生,更多的在運用起來的時候還是感到很棘手,畢竟,萬事開頭難嘛。
學習c程序設計語言除了課堂講授以外,必須保證有不少于課堂講授學時的上機時間。因為學時所限,課程不能安排過多的統(tǒng)一上機實驗,所以希望學生有效地利用課程上機實驗的機會,盡快掌握用c語言開發(fā)程序的能力,為今后的繼續(xù)學習打下一個良好的基礎。為此,我們結合課堂講授的內(nèi)容和進度,安排了12次上機實驗。課程上機實驗的目的,不僅僅是驗證教材和講課的內(nèi)容、檢查自己所編的程序是否正確,課程安排的上機實驗的目的可以概括為如下幾個方面:
1、加深對課堂講授內(nèi)容的理解
課堂上要講授許多關于c語言的語法規(guī)則,聽起來十分枯燥無味,也不容易記住,死記硬背是不可取的。然而要使用c語言這個工具解決實際問題,又必須掌握它。通過多次上機練習,對于語法知識有了感性的認識,加深對它的理解,在理解的基礎上就會自然而然地掌握c語言的語法規(guī)定。對于一些內(nèi)容自己認為在課堂上聽懂了,但上機實踐中會發(fā)現(xiàn)原來理解的偏差,這是由于大部分學生是初次接觸程序設計,缺乏程序設計的實踐所致。
2、熟悉程序開發(fā)環(huán)境、學習計算機系統(tǒng)的操作方法
一個c語言程序從編輯、編譯、連接到運行,都要在一定的外部操作環(huán)境下才能進行。所謂";環(huán)境";就是所用的計算機系統(tǒng)硬件、軟件條件,只有學會使用這些環(huán)境,才能進行程序開發(fā)工作。通過上機實驗,熟練地掌握c語言開發(fā)環(huán)境,為以后真正編寫計算機程序解決實際問題打下基礎。同時,在今后遇到其它開發(fā)環(huán)境時就會觸類旁通,很快掌握新系統(tǒng)的使用。
3、學習上機調(diào)試程序
完成程序的編寫,決不意味著萬事大吉。你認為萬無一失的程序,實際上機運行時可能不斷出現(xiàn)麻煩。如編譯程序檢測出一大堆錯誤。有時程序本身不存在語法錯誤,也能夠順利運行,但是運行結果顯然是錯誤的。開發(fā)環(huán)境所提供的編譯系統(tǒng)無法發(fā)現(xiàn)這種程序邏輯錯誤,只能靠自己的上機經(jīng)驗分析判斷錯誤所在。程序的調(diào)試是一個技巧性很強的工作,對于初學者來說,盡快掌握程序調(diào)試方法是非常重要的。有時候一個消耗你幾個小時時間的小小錯誤,調(diào)試高手一眼就看出錯誤所在。
做完這個課程設計,我們的自信一下子提高了;盡管對于有些人這種程序會很簡單,可對我們c語言初學者來說,已經(jīng)很不容易了。這次體驗為以后的學習計算機的我們增強了信心。享受勞動成果的滋味實在很美妙啊!雖然對著電腦做程序,有點累有點熱,可是當看到勞動成果時,真是別有一番滋味在心頭啊!世上無難事,只怕有心人,的確如此。做完這個程序最大的收獲就是感受到了集體的力量,當然個人的智慧也是很重要的哦!
忙碌了一個多星期,在大家的共同努力下,我們總算將此程序設計出來。盡管不是自己獨立完成,但仍然很高興,因為在設計的過程中,讓我了解到要設計一個程序,查找資料是至關重要的,在他人的基礎上,再根據(jù)自己所學進行修改與調(diào)試,最后設計出自己想要的程序,這過程艱辛,但只要你持之以恒,成功指日可待。p副標題e
另外平時扎實的基礎也很關鍵,因為如果你平時學得就不怎么樣,那么你面對這么一個比較有難度的程序,你可能會望而卻步,看他人的程序都是個難點,更別說讓你自己去設計。為了解決此。類問題,最好就是多向同學,老師請教,不要怕難為情。
c語言課程設計和現(xiàn)代計算機技術的實際應用相結合,是我們在本階段學完理論課程之后對自己該方面的能力的一次很好的檢驗,從開始的算法思路到運行調(diào)試后的美觀的圖形界面以及另人興奮的可用程序,都是一個很好的學習和鍛煉的過程。使我們鞏固了原有的理論知識,培養(yǎng)了我們靈活運用和組合集成所學過知識及技能來分析、解決實際問題的能力。使我們體會到自身知識和能力能在實際中的應用和發(fā)揮。不但可以激發(fā)創(chuàng)新意識,還可以開發(fā)創(chuàng)造能力、培養(yǎng)溝通能力。這次實習時間雖然僅有一個星期,但確實使我受益非淺。通過實習我豐富了計算機操作經(jīng)驗,更加深了對c語言的了解,熟悉了其環(huán)境,更增強了對turbo c的使用技巧。
二十一世紀是計算機的世紀,是一個全新的世紀,計算機正逐步入侵我們的生活。剛開始接觸計算機的時候感覺很新奇,那時覺得計算機很神秘,于是就產(chǎn)生了以后一定要熟練掌控計算機的念頭。大學的教育模式和中學有很大不同,從平常的課程安排和教學就可以知道,但是獨立完成課程設計和寫論文這種任務對我們來說無疑是一個很大的挑戰(zhàn)
總之,這次設計程序讓我受益良多,我會好好珍惜像這種難得的機會。
一、課程設計的目的
(1)掌握結構化程序設計的基本方法,基本掌握面向?qū)ο蟪绦蛟O計的基本思路和方法。
(2)掌握C的基本概念和基礎知識。
(3)通過訓練能夠讀懂較為復雜的C語言源程序并具備基本C語言程序設計的能力。
(4)熟練掌握各種常用類的定義,繼承,文件的應用,為更好的理解面向?qū)ο蟠蛳赂玫幕A。
(5)通過實訓,培養(yǎng)自己編寫、調(diào)試、分析大型應用程序的能力。
(6)掌握面向?qū)ο蟮幕驹?,提高學生綜合程序設計的能力。
(7)培養(yǎng)自己獨立解決問題,查找資料的能力。同學之間相互幫助,相互交流,相互合作的團隊精神。
(8) 培養(yǎng)自己良好的學習興趣,獨立的編程風格。
(9) 通過實訓檢查自己學習上的不足,達到熟練掌握C語言的基本知識和技能。
(10)《C語言程序設計》是計算機專業(yè)重要的課程,C語言功能豐富、表達能力強,使用靈活方便、可以編寫實用的應用軟件。
(11)靈活使用C語言進行程序編寫,鞏固有關語句,變量定義、輸入、輸出、結構體,指針、文件操作等概念和方法。
(12)提高調(diào)試程序的技能,提高軟件編寫的能力。學會編制結構清晰、風格良好、數(shù)據(jù)結構適當?shù)腃語言程序,從而具備解決綜合性實際問題的能力。
二、課程設計的題目:學生成績管理系統(tǒng)
三、課程設計報告內(nèi)容
1.學生成績數(shù)據(jù)包括:學號,姓名,語文,數(shù)學,英語,總分 2.使用結構體數(shù)組存放學生成績.
typedef struct stud /*學生成績數(shù)據(jù)結構*/
{char id[10];
Char name[20];
Int yuwen;
Int shuxue;
Int yingyu
Int totalscore;
}stud;
stud st[N]; /* 學生成績數(shù)組*/
define N 60
3.實現(xiàn)功能:
輸入數(shù)據(jù)
刪除數(shù)據(jù)
查詢數(shù)據(jù)
修改數(shù)據(jù)
顯示數(shù)據(jù)
數(shù)據(jù)可保存在文件中
數(shù)據(jù)可從文件中讀出
有命令菜單提示
4.編寫的程序要求完整實現(xiàn)功能,用戶介面友好,程序運行可靠。
5. 設計的步驟
(1)需求分析:了解基本原理,確定軟件的基本功能,查找相關資料;
(2)總體設計:確定軟件的總體結構、模塊關系和總體流程;
(3)詳細設計:確定模塊內(nèi)部的流程和實現(xiàn)算法。
(4)上機編碼和調(diào)試;
(5)實際數(shù)據(jù)運行測試。
6.各個功能模塊和函數(shù)命名
7.各個功能模塊介紹:
(1).輸入成績
指定班級名稱和學期
輸入若干條記錄
添加存入指定成績文件尾部
(2).刪除某同學的成績信息
指定班級名稱和學期
輸入學生的學號
打開該班該學期的成績文件讀入所有數(shù)據(jù) 查找指定學號的成績記錄,找到則刪除該記錄 把所有數(shù)據(jù)寫回原數(shù)據(jù)成績文件
(3). 查詢某學生成績
指定班級名稱和學期
輸入學生的學號
打開該班該學期的成績文件讀入所有數(shù)據(jù) 查找指定學號的成績記錄并顯示該記錄
(4). 修改某學生成績
指定班級名稱和學期
輸入學生的學號
打開該班該學期的成績文件讀入所有數(shù)據(jù) 查找指定學號的成績記錄,找到顯示該記錄 輸入該生正確的成績
把所有數(shù)據(jù)寫回原數(shù)據(jù)成績文件
(5). 退出系統(tǒng)
8.處理流程
四.總結
學生成績管理系統(tǒng)的編寫,看似雜亂無頭緒,實際上卻并不如此。它的每一個功能都能分成模塊,有句話說的好,大事化小,小事化了。C語言編程也正式如此,把一個大的程序分為若干相互獨立的模塊,這樣使完成每一個模塊的工作變得單純而明確,這樣不僅降低了難度還使得思路清晰,很容易編寫出要做的程序,從而為設計一些較大的軟件打下了良好的基礎。
分析問題:
學生成績管理的整體功能都包括輸入數(shù)據(jù)、刪除數(shù)據(jù)、查詢數(shù)據(jù)、修改數(shù)據(jù)、顯示數(shù)據(jù)
五大板塊。
設計的數(shù)據(jù)對象包括整形:各科成績和總成績 字符型:姓名、學號。 程序的編譯與運行:
(1) 查找錯誤是一件讓人鬧心的事,但是要注重技巧,注意平時經(jīng)驗
的積累。才能在最快的時間找出錯誤
(2) 用心去查找,也許你會發(fā)現(xiàn)錯誤并不是很難找
(3) 程序編譯成功不要滿足現(xiàn)狀,要積極測試程序的可用性,對功能不理想,存在缺點的地方,積極的改進,完善。
五.心得與感想
一周的C語言實訓,雖然時間略顯倉促,但卻讓我學到了很多實際運用的技能!
首先,在實訓中的第一步是編寫功能較為單一的小程序,雖然是小程序,但所用的知識卻都是我們本學期學習的重點知識。在做題的過程中讓我們把這些知識復習了一遍,強化了知識!
其次,這次作中所碰到的題目,在實訓中已經(jīng)接觸過,所我們都比較深知這些題目的要求和算法,因次在編寫小程序時比較快,而且算法也是比較簡化,運算準確。鑒次我明白很多編程題要經(jīng)過多次編寫修改與調(diào)試,才會得到最簡略的算法。
再次,平時我們學C語言視乎都是為了考試或者做一些比較常規(guī)的題目,而這次實訓卻給我們的將所學知識運用于解決實際問題的機會,讓人更有激情,這就是編寫軟件的在雛形,也讓我們感受到了編寫軟件程序的樂趣。但是不僅僅是如此,更為重要的是在運用所學知識的過程中,記住這些知識,并能夠廣泛的運用!
雖然我這次是編寫一個菜單的程序,但是如果我么留心的話,我們身邊有許多電子設備都是內(nèi)置有程序的,我們也可以在此次專題實訓過后,自行確定其他的專題進行編寫程序,這樣可以讓我們的知識更加深化豐富!
這次實訓似乎是對我巨大的考驗,程序在不慌不忙的進行著,按照我自身的進度,提前完成是沒有問題的,但是很多客觀條件讓我不得不在最 后的時間里才上交的作業(yè)。每當我把程序?qū)懲暌院螅瑓s由于每一臺電腦的識別格式不一樣而導致我所寫的文件一次次的被損壞,盡管這樣,我仍然沒有放棄,最后還趕在截止時間到來之前上交了我的作業(yè)!
這一次編寫大作業(yè)的程序又讓我感受到學程序可以鍛煉縝密的思維了。因為平時練習的都是小程序,所以句段比較少,一些錯誤都很容易被檢查出來,但是這次實訓卻是上百段的語句,難以檢查,似乎也沒有經(jīng)驗去怎么檢查,那一剎那感覺到很急,但又不知如何是好,可是又不輕易的向老師詢問,因為好像蠻簡單,相信自己能夠檢查出來,所以我一般都是獨立思考的完成的,只有少部分是在老師和與同學討論下完成的。
在編寫程序中,真的是細節(jié)決定成敗,因為不管程序的語句是多是少,但是只要有一條語句或語法不正確,就不能使程序得到所需要的結果。沒能夠使自己編寫出來的程序等到想要的結果,意味著這是一個不理想的程序,對于本次編寫來說則是失敗的。
在實訓過程中,使我良好的鍛煉了自己,首先是興趣方面,通過編寫通訊錄管理系統(tǒng)使我更加喜歡編程,使我從以前的迷茫狀態(tài)中解脫出來,使我了解了編程的真正意義。我想這對我以后的人生有著很大的幫助。其次通過編寫通訊錄管理系統(tǒng)使我對寫程序有了一定的思路,不像以前無從下手,使我理解了算法的意義,使我懂得了模塊化思想的好處。
通過一個星期的編寫代碼,使我對書本上的知識有了更深的理解,甚至有很多不懂的問題在這過程中自然而然的理解了。對期末考試更有了信心。在黃爽老師的悉心指導下,我對C語言有了更深刻的理解,對程序的算法,數(shù)據(jù)的定義,程序的改錯等方面的能力有了很大提高,自身的注意力,耐心,和對編程的興趣有了很大增長,使我獲益匪淺。
看過c語言實踐報告范文